2013-11-20 76 views
0

我用VS 2012创建一个使用标准内置模板的动态数据网站。使用EF我已经将数据库添加到了我想要使用的项目中,并且只选择了我认为适合通过网站管理数据的表格。在第一页上,您可以得到表格列表,当您点击其中一个表格时,会列出该表格中所有内容(行和列)的列表。我对做这种事情很陌生,我想知道如何做到这一点,所以只有某些列出现。我想这样做是因为当你点击一张桌子时,如果列数多于几个,他们就会从浏览器右侧拖出。所以基本上我只想显示我认为相关的列。顺便说一句,这个项目在ASP.NET中使用EF作为数据模型。当你点击你想要查看的行的“详细信息”链接时,我仍然希望这些列是可见的,我只是希望它们不会显示在列表视图中。我该怎么做,我需要修改哪些文件?动态数据网站,如何忽略列?

+0

另一件事,我知道脚手架,唯一的问题是,当我把它设置为真的我不想显示的列,它消除了在编辑页面编辑这些列的能力。 – Skrubb

回答

0

您可以通过使用[ScaffoldColumn(false)]数据注释属性省略列。我有一个类似的情况,我不想包含CreatedBy,CreatedOn,UpdatedBy和UpdatedOn列。查看代码示例以了解如何排除它们。

using System; 
using System.ComponentModel.DataAnnotations; 

namespace S1000DDecision.Data 
{ 
    /// <summary> 
    /// Summary description for Category 
    /// </summary> 
    [ScaffoldTable(true)] 
    [MetadataType(typeof(CategoryMetadata))] 
    public partial class Category 
    { 

    } 

    public class CategoryMetadata 
    { 
     [ScaffoldColumn(false)] 
     public Object CreatedBy { get; set; } 

     [ScaffoldColumn(false)] 
     public Object CreatedOn { get; set; } 

     [ScaffoldColumn(false)] 
     public Object UpdatedBy { get; set; } 

     [ScaffoldColumn(false)] 
     public Object UpdatedOn { get; set; } 

    } 
}