Asp.net 在C#中,如何在属性的属性中添加动态值
我有以下代码块:-Asp.net 在C#中,如何在属性的属性中添加动态值,asp.net,asp.net-mvc-3,entity-framework-4,Asp.net,Asp.net Mvc 3,Entity Framework 4,我有以下代码块:- using System.ComponentModel.DataAnnotations; public class NewsItem { [RegularExpression(System.Configuration.ConfigurationSettings.AppSettings["UrlRegEx"], ErrorMessage = "Invalid link")] public string Url { get;
using System.ComponentModel.DataAnnotations;
public class NewsItem
{
[RegularExpression(System.Configuration.ConfigurationSettings.AppSettings["UrlRegEx"], ErrorMessage = "Invalid link")]
public string Url { get; set; }
}
这将返回错误“属性参数必须是常量表达式、typeof表达式或属性参数类型的数组创建表达式”
如何在RegularExpression属性的第一个参数中给出值。我想从Web.Config变量中给出值。我在EF的模型类中使用这段代码。您可以指向数据注释以从资源文件中拾取值 看 或 您可以编写自定义验证方法并从中选择值 看 或
您可以编写一个正则表达式派生的属性类,该类可以从web.config读取值。您希望使用web.config存储这样的字符串的原因是什么?资源文件、数据库或声明的常量都是非常合理的方法,但我从未听说过有人使用web.config appsettings进行此操作。@是的,你是对的。但我认为从Web.Config appsettings获取RegularExpression的值是一种在需要时快速更改表达式字符串的方法。否则,我们必须编译代码。或者实现ivalidatableobject来编写一个正则表达式派生的属性类,该类可以从web.config读取值。请参见