2010-08-25 39 views
1

我有2个表,主,细节。 1.主表有字段(id,用户名,计划) - > id是主键(PK) 2.详细表有字段(srNo,id,worksummary,...) - > srNo是PK。如何访问ASP.NET MVC的Ilist对象refrenced表字段

我已经为“id”字段创建了从详细信息到.master表的外键关系。

代码:

IList<detail> objDetail=new List<detail>(); 
IList<master> objMaster = new List<master>(); 
string[] sarray = queryFields.Split('|');// 

for (int i = 0; i < sarray.Length; i++) 
{ 
     string[] sfields = sarray[i].Split(','); 

     if (sfields[0] != "") 
      { 

     objDetail.Add(new _detail { Id = count , modify = sfields[1].ToString(), verified = sfields[2], I}); 


       } 
    } 

我有问题,使用添加法 “objDetail” 添加字段。 但是我无法访问引用字段“Id”,可以使用objDetail访问其他细节表字段。

如何从objDetail对象访问“Id”字段以添加到IList中。


更新: 嗨,

没有,QUERYFIELD不是来自 数据库,它只是隐藏 变量从方法 参数计数得到的是在 整型变量,我将该值分配为 行号。

类型“detail”和“master”是数据库表。 第1行的细节类型与_detail相同(这只是拼写错误)。 我正在访问使用实体框架工作的数据库。

我能够访问所有的细节表字段,但外键关系存在的字段不可访问。

如何访问该参考字段。

谢谢。

+0

为Y ou从数据库中获取queryFields? – 2010-08-25 09:19:13

+0

代码示例中的“count”变量来自哪里? – 2010-08-25 11:33:40

+0

如何定义类型的“细节”和“主”?第1行中的'detail'类型与'_detail'相同吗?这些类型是由Linq2SQL还是类似的产生的?你如何访问数据库(我从你引用的表和外键中推断出你正试图访问数据库)? – Rune 2010-08-25 11:45:35

回答

0

我假设你正在使用某种ORM。你可能会想要做的是不用担心的ID所有,而是一个实体关系联系起来,

让我们假设你的类定义如下:


public class Master 
{ 
    public int Id { get; set; } 
    public string Username { get; set; } 
    public string Plan { get; set; } 

    public ICollection Details { get; set; } 
} 

public class Detail 
{ 
    public int srNo { get; set; } 
    public string Modify { get; set; } 
    public int MasterID { get; set; } 
    public Master Master { get; set; } 
} 

然后你他们喜欢这个关联(假设EF代码第一):


master.Details.Add(new Detail { Modify = "Something" }); 
context.SaveChanges(); 

基本上你要详细到主集合关联,该框架将带你分配一个ID的护理

相关问题