1

我有一个有趣的问题,想看看有没有其他人看过这个。我使用 Visual Studio 2010 beta 2 创建了一个 MVC 2 站点。我正在使用 linq to sql 数据模型对象和数据注释。

在我的数据模型对象中,当我使用 EditorForModel 方法时,我使用 [ScaffoldColumn(false)] 属性将外键 ID 从呈现到 UI 中排除。出于某种原因,UI 正在呈现外键表名称。

例如,如果外键是 AccountID,我会看到“帐户”。

我想知道这是否是 editorformodel 中的错误,或者我是否需要使用不同/附加的数据注释属性来指示 editorformodel 不渲染任何内容。

4

1 回答 1

1

您的 Linq to SQL 类将具有外键本身的属性 (AccountID) 以及 Accounts 表中相关记录的 EntitySet 属性。如果您在 linq to sql dbml 下打开自动生成的 Designer.cs 文件 - 您可以查看每个类的所有属性。我认为默认情况下,模板化助手只应该为第一级属性生成一个编辑器。有一个“深入研究”选项可以将生成的编辑器扩展到更多级别的属性。查看Brad Wilson关于该主题的博客(接近文章末尾)。

通常,尝试将自动生成的 Linq to SQL 类放入视图或使用属性对其进行注释会变得非常麻烦。可能值得检查强类型视图模型,您可以在其中仅指定您有兴趣在视图中显示的属性。

于 2010-01-18T05:16:14.580 回答