0

我是 MVC 的新手。我正在尝试通过在线教程找到自己的方式。

据说,

我有一个表 A (a1,a2,a_b1) 和一个表 B (b1,b2)

a_b1 是来自 B.b1 的外键。

我使用它的模板在 Visual Studio 中生成了列表视图。我可以访问表 A 的 a1 和 a2 字段 <%=Html.Encode(item.a1) %><%=Html.Encode(item.a2) %>

但是当我尝试访问 A.a_b1 值(不是对表 B 的引用)时,我只能从表 B 中获取对对象的引用。谢谢基里尔,我不知道什么是 CodeFirst、ModelFirst 或 DatabaseFirst。我有这些表,并使用 Visual Studio 和 Linq 为表 A 和 B 生成类。所以 A.a1、A.a2 显示在创建的对象中。我在字段中有 AB 和 A.BReference

我认为应该有一种方法可以访问列的值而不是引用。你能帮我么?

我不想执行连接,只需要值。

我尽力具体,但如果不清楚,请告诉我。

谢谢

编辑:

我使用 ADO.Net 实体数据模型来生成与我的表关联的对象。

在我的控制器中,我有:

A sample1=repository.search(id);
string s1 = sample1.a1;
string s2 = sample1.a2;
string s3 = sample1.a_b1; (ERROR)

相反,我有

   sample1.B   (an object of type B)
and 
sample1.BReference  (object of type EntityReference<B>)
4

1 回答 1

0

回答遇到同样问题的人:

我定义了一个新类 A_text,它包含 A 的所有字段。(包括 a_b1)

在选择中,我使用了:

var result = from pt in db.A
                     where pt.id== id
                     select new A_text
                     {
                         id= pt.id,
                         a1= pt.a1,
                         a2 = pt.a2,
                         a_b1= pt.a_b1.id
                     };
        return (result.FirstOrDefault());

与之前相比,我不确定效率

 db.Search(id);

但到目前为止似乎还可以。

于 2012-09-13T20:44:42.233 回答