`
ribishuangba
  • 浏览: 291833 次
文章分类
社区版块
存档分类
最新评论

Silverlight, RIA Services, Data Annotation与本地化资源文件共享

 
阅读更多

在RIA Services中使用Data Annotations可以非常方便的实现数据验证,并且Data Annotation可通过资源文件.resx实现本地化。这里最大的挑战是如何在Silverlight端与WCF端共享资源文件。

如何实现资源文件的共享?

服务端项目文件设置(VB.NET项目)如下:


图1-1: 服务端资源文件 - ValidationStrings.Designer.vb中的构造函数修改为Public (此为VS的bug,每次改动resx文件,需手动修改)


图1-2 VB.NET默认 Namespace为"My.Resources",这里去掉


图1-3 Domain Service的metadata文件中可使用Data Annotation 的本地化参数

Silverlight端项目文件设置如下:


图2-1 "链接添加"现有的服务端项目资源文件


图2-2 编辑Silverlight项目文件,添加图中高亮内容

图2-3 继续添加图中高亮内容,LogicalName中使用服务端项目的根命名空间名称


图2-4 编译Silverlight项目,可查看自动生成的代码中已经在Silverlight端使用了Data Annotation及本地化参数

通过以上设置,就实现了Data Annotation本地化资源文件在Silverlight端与服务端的共享。效果如下:

参考1:http://forums.silverlight.net/forums/p/184013/420509.aspx

参考2:http://msdn.microsoft.com/en-us/library/ms164295(v=vs.90).aspx

资源1:使用反编译器查看assembly中的资源文件命名,可有助于发现问题。Reflector不再免费,可用JustDecompile

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics