2011-06-10 10 views
0

我最近阅读Hadi Hariri的博客文章:That dreaded M in ASP.NET MVC。 Hadi调查了ASP.NET MVC开发人员关于他们在应用程序中使用的模型类型。他的一个调查问题如下:在这方面“约定”是什么意思?

如果绑定到域模型,您将如何处理额外的数据,如国家/地区列表?

还有一个人写了select Other并写在:“约定”中。接下来,哈迪写道:

我已经找到了另一种方法来解决这个问题,部分基于约定。

再后来说:

也许我们应该采取公约的概念,更严重的不仅仅是哪些文件夹我们的观点,控制器和模型位于也许我们应该推动公约的限制看看。如果我们真的减少这种摩擦。

他用“惯例”来解决这个问题是什么意思?我在这方面对这个词不熟悉。

谢谢

回答

1

公约在这方面可能意味着很多事情。松散地,它只是解决不是内置的问题的解决方案,而是使用名称进行查找。

在MVC中已经有一个例子,名为“Home”的控制器的路由映射到名为“HomeController”的类。将这个想法扩展到选定的国家和国家列表问题,您可以考虑许多解决方案。

一个例子来给出一个模型:

public class UploadModel 
{ 
    public string Country {get; set;} 
} 

我们可以通过约定在哪里,它看起来与它的名字后的单词“选项”的模型,然后匹配的命名定义此模型选项该模型上的属性在选项模型上具有类似的命名属性。

public class UploadModelOptions 
{ 
    public IList<string> Country {get;set;} 
} 

这可能不是一个很好的约定,但它是作者可能会谈论的一个可以接受的例子。