我正在尝试按照this文档引用我的域名服务。
以下两个声明工作正常
xmlns:riaControls = "clr-namespace:System.Windows.Controls;
assembly=System.Windows.Controls.DomainServices"
和
xmlns:data = "clr-namespace:System.Windows.Controls;
assembly=System.Windows.Controls.Data"
但是我遇到了这个问题
xmlns:domain="clr-namespace:SNMPApplication.Web"
即使在重建整个解决方案之后,也会出现此错误:
未定义的CLR命名空间。该 'clr-namespace'URI是指a 未包含在的名称空间 组装
我尝试添加对Silverlight项目的引用但是我收到此错误
您只能添加项目引用 其他Silverlight项目 溶液
有没有人知道问题是什么? :/
提前非常感谢你。
答案 0 :(得分:1)
添加对RIA DomainService的引用的方式不是通过传统的“添加引用”对话框。您可以通过项目设置完成。在Silverlight应用程序中,转到项目设置,特别是“Silverlight”选项卡。在该选项卡上将是“WCF RIA服务链接”。您将能够选择包含DomainService的项目。
选择项目后,Visual Studio将为您的Silverlight应用程序生成代码。这可以在Generated_Code文件夹中找到(在项目中不可见,但您可以在文件夹中看到它)。这是您需要引用的代码。
答案 1 :(得分:0)
当你这样做时,你实际上并没有创建对你的web项目的引用,它在编译时解析它以创建生成的g.cs文件(我怀疑),这是在后台执行的那些神奇的事情之一(我认为它将它存储在您的项目文件中,并在项目属性中设置它 - > WCF Ria Services链接下的silverlight选项卡)。
请检查以下内容:
您的SNMPApplication.Web与Silverlight项目(SNMPApplication)位于同一解决方案中 并且您的引用与您添加到web.Project类的DomainService类命名空间相同(它可能位于子文件夹中,这就是它无法正常工作的原因,
如果您尚未创建域名服务,请添加一个,因为这是silverlight和ria服务用于连接您的实体模型和silverlight的内容。 (从添加DomainService类看看here
xmlns:domain =“clr-namespace:SNMPApplication.Web”
答案 2 :(得分:0)
如果您真的需要从SNMPApplication项目访问Web项目,那么我认为您需要的是这个问题的答案之一:How to access web application class into silverlight application