相关疑难解决方法(0)

不显眼的客户端验证规则中的验证类型名称必须是唯一的

不显眼的客户端验证规则中的验证类型名称必须是唯一的.以下验证类型不止一次出现:必需

这是指EmailAddress属性,这里:

public class LoginModel
{
    [Required]
    [DataType(DataType.EmailAddress)]
    [Display(Name = "Email")]
    [AdditionalMetadata("Style", "Wide")]
    public string EmailAddress { get; set; }

    [Required]
    [DataType(DataType.Password)]
    [Display(Name = "Password")]
    [AdditionalMetadata("Style", "Wide")]
    public string Password { get; set; }
}
Run Code Online (Sandbox Code Playgroud)

我这里没有两次使用相同类型的验证规则.这在本地工作正常,但在部署到服务器时则不行.这是怎么回事?

我确实添加了对DataAnnotationExtensions(http://dataannotationsextensions.org)的引用,是否会导致问题?

编辑:删除引用没有解决问题.似乎有些东西可能搞砸了IIS配置?

iis-7.5 unobtrusive-validation asp.net-mvc-3

34
推荐指数
4
解决办法
2万
查看次数

RIA/EF4实体属性映射到NOT NULL nvarchar - 空字符串

背景:

  • 实体框架4
  • Silverlight 4
  • RIA服务
  • MSSQL Server 2008

我有一个具有名为Description的String属性的实体.

在数据库中,它映射到NOT NULL NVARCHAR(200).

问题:

当我尝试插入该实体的新行时,这就是我所做的:

MyExampleEntity entity = new MyExampleEntity()
{
    Name = "example",
    Description = ""        // NOTE THIS LINE!
};

DatabaseContext db = new DatabaseContext();
db.MyExampleEntities.Add(entity);
db.SubmitChanges();
Run Code Online (Sandbox Code Playgroud)

然而,这引起了例外 "The Description field is required."

题:

"空字符串"不应该只是 - 一个字符为零的字符串吗?

我认为只Description = null应视为没有价值.

  • 为什么我的字符串有一个值(虽然它的长度为0),被认为是我省略了值?
  • 这种转换发生在什么程度?在RIA上,在EF上还是在MSSQL中?
  • 当我设置Description to ""并且Description = null(没有值)时导致异常时,有没有办法使描述具有零长度值?

string silverlight ria entity-framework

10
推荐指数
1
解决办法
1488
查看次数

默认情况下,asp.net mvc 3中的隐藏,无线电,下拉元素的客户端验证属性

我正在使用ASP.NET MVC 3 + FLUENT VALIDATION + NINJECT

我有模型X,该模型的规则是这样的:

RuleFor(c => c.FirstName).NotEmpty();
RuleFor(c => c.LastName).NotEmpty();
Run Code Online (Sandbox Code Playgroud)

我发现了一个奇怪的东西,引擎将验证属性放在所有隐藏元素和下拉列表,单选按钮等上.我没有在该模型的验证配置中指定这个,所以我猜它是默认的. ..

<input type="hidden" value="1" name="Id" id="Id" data-val-required="&amp;#39;Id&amp;#39; must not be empty." data-val-number="The field Id must be a number." data-val="true">
Run Code Online (Sandbox Code Playgroud)

验证有效,因为隐藏元素总是有值,但我有单选按钮的问题.例如,如果我不想在默认情况下总是选择一个单选按钮但是为空,如果我想在该项上放置验证规则,则渲染会将默认验证属性放在我的规则之上,因此它会搞砸和验证不能正常工作......

任何人都有类似的问题或者对此有所了解,或者我是否必须自行查看ASP.NET MVC源代码?:)

半懒惰和按推迟最小的编码器

编辑:

我尝试从这个链接提出解决方案:

流畅的验证.错误:不显眼的客户端验证规则中的验证类型名称必须是唯一的

但无论AddImplicitRequiredAttribute设置如何,asp.net mvc都会在每个字段上发出必需的属性...

asp.net-mvc client-side-validation fluentvalidation-2.0

1
推荐指数
1
解决办法
1296
查看次数