【问题标题】:How to change the DisplayName of a table in ASP.Net Dynamic Data如何在 ASP.Net 动态数据中更改表的 DisplayName
【发布时间】:2012-05-09 07:15:36
【问题描述】:

我是动态数据的新手。我想更改 Default.aspx 页面中表的 DisplayName,以便为它们设置含义全名。我还想在列出、编辑和插入模式时更改表的列名。如何用 c# 语言做到这一点?

【问题讨论】:

    标签: asp.net asp.net-dynamic-data


    【解决方案1】:

    您可以通过在每个表上设置DisplayName(来自System.ComponentModel)属性来做到这一点。为此,您需要为每个使用动态数据搭建脚手架的表都有一个部分类,例如

    using System.ComponentModel.DataAnnotations;
    using System.ComponentModel;
    
    ...
    
    [ScaffoldTable(true)]
    [DisplayName("Northwind Products")]
    partial class Product
    {
    }
    

    渲染...

    【讨论】:

    • 列名怎么样?当我将 DisplayName 用于表列时,我收到此错误“属性‘DisplayName’在此声明类型上无效。它仅在‘类、方法、属性、索引器、事件’声明上有效”
    • 已解决。只需添加 {get; set;} 在列名前面。 [DisplayName("Active")] 公共对象 IsActive { get;放; }
    • 这不适用于外键列。你知道如何更改外键的名称吗?
    • @Karadous 看看System.ComponentModel.DataAnnotations 中的DisplayColumn 属性,它可以让您从引用的表中选择要显示的列
    • 它不适用于外键,或者说我不知道​​如何使用它更好。
    【解决方案2】:

    对于看到这篇文章的其他人,我的要求与原始海报相同。我尝试了这些建议,但这些仍然没有奏效。我发现(这可能很明显)你需要确保你的部分类中有一个“命名空间”声明。命名空间需要与您使用的实体模型相同,即在 App_Code 下您应该有一个 Model.designer.cs 文件 - 您的命名空间需要与

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-02-25
      • 1970-01-01
      • 2014-01-26
      • 1970-01-01
      • 2017-07-30
      • 1970-01-01
      • 2023-03-16
      相关资源
      最近更新 更多