我有以下利雅服務定義:利雅服務生成的代碼在Silverlight代碼,不可訪問
namespace SilverlightTest.Web
{
[EnableClientAccess()]
public class ContactService : LinqToEntitiesDomainService<AdventureWorksEntities>
{
public IQueryable<Contact> GetContactSearch(string lastName)
{
ContactRepository rep = new ContactRepository();
return rep.SearchByLastName(lastName);
}
}
}
當我編譯的解決方案,我SilverlightTest項目並創建SilverlightTest.Web.g.cs文件和相應的上下文對象是在我看時創建的。但是,當我嘗試導入SilverlightTest.Web命名空間以訪問上述服務的Data Context類時,它說它無法找到Web命名空間。
我可以我在做什麼,很多的例子是在那裏在網絡上看到之間的唯一區別是,我AdventureWorksEntities數據上下文位於一個獨立的業務對象DLL。我試圖直接查詢上下文,而不是使用我正在嘗試執行的存儲庫模式,它也不工作。
任何想法?是否有可能讓Ria Services訪問單獨的DLL來處理數據訪問,還是需要在同一個項目中?
當我添加另一個服務沒有改變。我將我的web.config與Brad Abrams的教程帖子的web.config進行了比較,也沒有看到任何不同。 – JamesEggers 2009-11-22 20:52:40
你有一個參考Web項目中的服務項目? 此外,Silverlight項目屬性中有一個用於Ria服務鏈接的選項。雖然,如果你得到一個已經被標記的生成的web.g.cs文件。 – 2009-11-23 04:36:53
我最終不得不在我的項目中包含生成的.g.cs文件,以便在VS2008中識別它。一旦我做到了這一點,它開始工作。您確認了我的更一般化的問題「是否可能」,以便標記您的答案。 – JamesEggers 2009-11-23 18:28:45