3

我有三个类:Tab、Webpage 和 base。我的 Tab 类包含一个网页对象。所以是这样的:

public class Tab : Base
{
   public Webpage webpage {get; set;}
   //other code
}

public class Webpage : Base
{
   public string url {get; set;}
   //other code
}

public class Base
{
   public int id {get; set;}
   //other code
}

我正在尝试使用 linq 查询来插入 Tab 对象,但是当我执行 dbConn.Insert(myTabObj) 时,它会在尝试插入网页时返回错误。现在我知道我可以将它序列化并存储在表中。

但是,我想知道是否有一种方法可以自动将网页添加到网页表中并将该网页的 id 存储在选项卡表中。

编辑:或者是否有可能以某种方式“查看”网页对象内部并将 URL 存储在 Tab 表中。但是在检索时它会再次将 url 存储在 Webpage 对象中。

4

1 回答 1

0

首先,确保使用 O/R 设计器正确设计和链接Tab和类。Webpage您需要设置外键约束,以便idLinq-to-SQL 识别。

演练:创建 LINQ to SQL 类(O/R 设计器)
http://msdn.microsoft.com/en-us/library/bb384428.aspx

然后,您可以使用 InsertOnSubmit 函数来安排将新对象插入到两个表中。

YourDBDataContext dataContext = new YourDBDataContext();
...

Webpage page = new Webpage();
page.id = "p1";
page.url = "http://stackoverflow.com";
dataContext.InsertOnSubmit(page);

Tab tab = new Tab();
tab.id = "t1";
tab.webpage = page;
dataContext.InsertOnSubmit(tab);

dataContext.SubmitChanges();
于 2013-08-21T07:39:29.487 回答