在 MetaData 部分中使用 AdditionalMetadata class
Using AdditionalMetadata in MetaData partial class
我已按照 https://www.asp.net/mvc/overview/getting-started/database-first-development/enhancing-data-validation 中的示例将数据注释添加到 MetaData.cs
我正在尝试使用 AdditionalMetaData,以便我可以将变量传递给 EditorTemplate。我试过:
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName;
我希望这将以类似的方式应用于 StringLength 元数据。
我可能需要修改 PartialClasses.cs 吗?目前,这将模型和元数据 类 与:
相关联
[MetadataType(typeof(StudentMetadata))]
public partial class Student
{
}
如有任何帮助,我们将不胜感激。
更新:
MetaData.cs 包含:
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName;
PartialClasses.cs 包含:
[MetadataType(typeof(StudentMetadata))]
public partial class Student
{
}
Student.cs 包含:
public string LastName{ get; set; }
我不想修改 Students.cs - 因为我将来可能需要重新生成它。我曾希望在 MetaData.cs.
中添加 AdditionalMetaData
首先,您必须将 LastName
声明为 属性。
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName { get; set; }
无需对 PartialClasses.cs
进行任何更改。您必须在视图中正确检索它,如下所示。
<h2>
@ModelMetadata.FromLambdaExpression(x => x.LastName, ViewData).AdditionalValues["VariableName"]
</h2>
我已按照 https://www.asp.net/mvc/overview/getting-started/database-first-development/enhancing-data-validation 中的示例将数据注释添加到 MetaData.cs
我正在尝试使用 AdditionalMetaData,以便我可以将变量传递给 EditorTemplate。我试过:
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName;
我希望这将以类似的方式应用于 StringLength 元数据。
我可能需要修改 PartialClasses.cs 吗?目前,这将模型和元数据 类 与:
相关联[MetadataType(typeof(StudentMetadata))]
public partial class Student
{
}
如有任何帮助,我们将不胜感激。
更新:
MetaData.cs 包含:
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName;
PartialClasses.cs 包含:
[MetadataType(typeof(StudentMetadata))]
public partial class Student
{
}
Student.cs 包含:
public string LastName{ get; set; }
我不想修改 Students.cs - 因为我将来可能需要重新生成它。我曾希望在 MetaData.cs.
中添加 AdditionalMetaData首先,您必须将 LastName
声明为 属性。
[AdditionalMetadata("VariableName", "VariableValue")]
[Display(Name = "Last Name")]
[StringLength(50)]
public string LastName { get; set; }
无需对 PartialClasses.cs
进行任何更改。您必须在视图中正确检索它,如下所示。
<h2>
@ModelMetadata.FromLambdaExpression(x => x.LastName, ViewData).AdditionalValues["VariableName"]
</h2>