如何在ASP.NET MVC和Windows Phone项目中验证ViewModel?

时间:2011-10-05 22:56:02

标签: asp.net-mvc-3 windows-phone-7 fluentvalidation fluentvalidation-2.0

我想创建一个同时具有ASP.NET MVC 3 Web客户端和Windows Phone 7电话客户端的应用程序。应用程序数据存储在SQL Server中,需要从两个客户端访问。

鉴于这种情况,我有两个问题:

  1. 我想重用我在手机应用程序中的(现有)MVC应用程序中使用的视图模型,并使用FluentValidation验证这些模型。我是否应该创建一个名为 ViewModels 的新类库,并在两个客户端项目中引用它,还是有更好的方法?
  2. 创建两个客户交谈的Web服务是否合适?或者通过MVC Web项目访问数据是否更好?
  3. 该场景的适当解决方案结构如何?

2 个答案:

答案 0 :(得分:1)

  

我是否应该创建一个名为ViewModels的新类库并在两个客户端项目中引用它,还是有更好的方法?

是。除了你不能。或者,你可以,但是你需要两种不同的项目类型。我建议在其中一个项目中使用快捷方式。

“Windows Phone类库”无法从ASP.NET访问,反之亦然。

  

创建两个客户交谈的Web服务是否合适?

是的,非常合适

  

或者通过MVC Web项目访问数据是否更好?

您可以在网络项目中托管网络服务。但是,如果您有能力托管它,则单独的服务更容易维护。

使用RestSharp,您可以轻松地将其与ASP.NET MVC集成。

答案 1 :(得分:1)

  1. 您可以创建一个包含视图模型的库,并且如果它是Portable Class Library,则由两个客户端项目使用。 (它们是为这种情况而创建的。)
  2. 我知道FluentValidation支持WP7,但我不确定该版本的差异,或者您是否需要做一些特殊工作来使用PCL。