我有一個問題,我希望你可以幫助我。好吧,我會試着描述我的情況:ASP .NET MVC + LINQ生成的類+ DataAnnotations
我創建了數據庫。 添加了表格「訂單」。 然後在dbml文件中生成LINQ Classes。
現在,我已經在控制器中創建動作,並且試圖爲一個或我的Order類屬性(客戶端名稱)設置[DisplayName(「Other name」))]。所以,看看這個:
/核心/ Extansions.cs
namespace SUPNew.Core
{
public static class Extansions
{
}
[MetadataType(typeof(OrderMetaData))]
public partial class Order
{
}
public class OrderMetaData
{
[DisplayName("ФИО клиента")]
public string ClientFIO { get; set; }
}
}
/瀏覽/經理/ AddOrder.aspx
<legend>Fields</legend>
<div class="editor-label">
<%: Html.LabelFor(model => model.ClientFIO) %>
</div>
<div class="editor-field">
<%: Html.TextBoxFor(model => model.ClientFIO) %>
<%: Html.ValidationMessageFor(model => model.ClientFIO) %>
</div>
/控制器/ ManagerController.cs
using SUPNew.Core;
/型號/ SUPNew.dbml
public partial class Order : INotifyPropertyChanging, INotifyPropertyChanged
{
...
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientFIO", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
public string ClientFIO
{
get
{
return this._ClientFIO;
}
set
{
if ((this._ClientFIO != value))
{
this.OnClientFIOChanging(value);
this.SendPropertyChanging();
this._ClientFIO = value;
this.SendPropertyChanged("ClientFIO");
this.OnClientFIOChanged();
}
}
}
所以,也許我忘了做什麼?我需要在LabelFor(model => model.ClientFIO)中爲ClientFIO顯示DisplayName,這是我在部分類中選擇的。
Thx尋求幫助。
如果我改變的.dbml文件 - 添加[DisplayName的( 「中文別名」)]是這樣的:
[global::System.Data.Linq.Mapping.ColumnAttribute(Storage="_ClientFIO", DbType="NVarChar(50) NOT NULL", CanBeNull=false)]
[DisplayName("Other name")]
public string ClientFIO
{
get
{
return this._ClientFIO;
}
set
{
if ((this._ClientFIO != value))
{
this.OnClientFIOChanging(value);
this.SendPropertyChanging();
this._ClientFIO = value;
this.SendPropertyChanged("ClientFIO");
this.OnClientFIOChanged();
}
}
}
它的工作原理,但是當我嘗試做局部類 - 不是。有人可以用LINQ生成的類的部分類來幫助我嗎?
http://stackoverflow.com/questions/1871499/metadatatype-問題 – 2011-01-14 21:28:27