我急於嘗試開發RIA服務,但我希望用戶和角色類是由EDM設計人員生成的實體。
問題在於,我無法從UserBase
繼承,因爲實體已從EntityObject
繼承。
我試圖按照我在網上幾次討論中所閱讀的內容進行操作,並且我實現了具有IUser
接口的用戶的部分類別,其中AuthenticationService
從LinqToEntitiesDomainService<MyEntities>
繼承,並實現IAuthentication<User>
。使用Entity-Framework和Silverlight WCF RIA-Services開發自定義授權服務?
但是因爲我覺得這是一個死路一條,因爲我一直在無處不在地遇到錯誤而沒有任何結果,所以我想我可能會將我的問題發佈給那些已經通過它並願意分享他們已經戰鬥的知識的人爲了,讓我的生活更輕鬆。
我求求你,請只分享你有經驗的想法,我花了很多時間找到解決方案。
UPDATE:
我設法讓它編譯並運行,但現在我有一個非常奇怪的情況:幾秒鐘,應用程序運行時,它消失後(我用外的瀏覽器),窗口框架仍然存在,但沒有內容!
這裏是我做了什麼,使其編譯:
- 生成實體模型實體
- 充分利用
User
類實現IUser
- 標記實施
Name
屬性,返回與Key
用戶名和DataMember
屬性 - 屬性
DataMember
對Roles
屬性 - 然後我運行該項目,它會編譯,但內容會在幾秒鐘後消失,而不會讓我知道內部異常的來源!
我可以告訴大家,下面是在輸出窗口打印後發生的消亡:
'sllauncher.exe' (Silverlight): Loaded 'ProxyBuilder'
然後,當它消失,它寫道:
'sllauncher.exe' (Silverlight): Loaded 'C:\Program Files (x86)\Microsoft Silverlight\4.0.50917.0\en-US\System.Runtime.Serialization.debug.resources.dll'
'sllauncher.exe' (Silverlight): Loaded 'C:\Program Files (x86)\Microsoft Silverlight\4.0.50917.0\en-US\mscorlib.debug.resources.dll'
資源I」 ve been through:
- The Name property in User must be marked with the KeyAttribute.
- How do I tie up the UserBase class with my database user entity?
你問你爲什麼會崩潰並失去窗口,或者你問如何通過EDM做安全? – jcolebrand 2010-11-07 16:58:59
是的。正如我在我的問題中所說的,我想要使用由EDM設計器生成的User類,並從EntityObject繼承它作爲我的用於RIA身份驗證服務的用戶類。 – Shimmy 2010-11-12 01:18:35