作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
好的,我刚刚遇到了这个问题,我应该只是检查我的电子邮件,但是我最终看到了这个(并且订阅了 TekPub 不远)。
http://tekpub.com/production/starter
现在这个应用程序是一个很好的起点,但它给我带来了一个问题,以及我已经被证明遵循的开发过程(正确或错误)。将数据传递到 View 时,不会从 LinqToSql 对象进行转换。这有什么负面的吗?
我可以看到的主要是验证,这在使用 MVC 的内置验证时是否会导致问题,因为这是我们广泛使用的东西。因为我们使用的是 LinqToSql 生成的内置对象,所以如何添加验证,比如
[Required(ErrorMessage="Name is Required")]
public string Name {get;set;}
最佳答案
对于实体对象,您可以使用伙伴类,从而创建第二个类,作为实体的元数据提供者。例如,使用 Linq-to-Sql 生成的 Customer 实体,我可以像这样创建一个伙伴类:
[MetadataType(typeof(CustomerMeta))]
partial class Customer {
}
public class CustomerMeta {
[DisplayName("Forename", Required(ErrorMessage = "Forename is required.")]
public string Forename { get; set;}
}
public class CreateUserSpec
{
[DisplayName("Forename")]
public string Forename { get; set; }
}
public class AccountController
{
public ActionResult Register() {
return View(new CreateUserSpec());
}
[AcceptVerbs(HttpVerbs.Post)]
public ActionResult Register(CreateUserSpec spec) {
if (!ModelState.IsValid) {
return View(spec);
}
var user = UserFactory.CreateUser(spec);
// Redirect to authorisation page?
}
}
关于asp.net-mvc - Asp.Net MVC2 TekPub Starter Site 方法问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2992748/
好的,我刚刚遇到了这个问题,我应该只是检查我的电子邮件,但是我最终看到了这个(并且订阅了 TekPub 不远)。 http://tekpub.com/production/starter 现在这个应用
我是一名优秀的程序员,十分优秀!