这个新的SL应用程序是我的解决方案的入口点,基本上从其他xap文件加载主页。检查更新等。
问题是 Loader 的RIA Services 生成代码与 MyApp
的代码代码不同MyApp的生成代码包含以下命名空间:
Loader生成的代码包含命名空间:
Loader中的以下代码行 - App.cs抛出 InvalidOperationException 。
WebContext.Current.Authentication.LoadUser(this.Application_UserLoaded, null);
异常的错误消息是:
DomainContextType为null或无效且没有从
生成的上下文AuthenticationBase<T>
答案 0 :(得分:2)
今天我遇到了同样的问题(有类似的设置)。仔细观察后,我发现this post on the silverlight forums有答案(查看解决方案的底部,因为RIA服务中有一些API更改)。
长话短说,问题是您的WebContext无法找到在您的情况下处理AuthenticationContext
的DomainContext(在本例中为LoadUser
)。要解决此问题,您需要将以下内容添加到App.xaml
:
<Application.ApplicationLifetimeObjects>
<dmnsvc:WebContext>
<dmnsvc:WebContext.Authentication>
<appsvc:FormsAuthentication>
<appsvc:FormsAuthentication.DomainContext>
<!--Your AuthenticationContext here-->
</appsvc:FormsAuthentication.DomainContext>
</appsvc:FormsAuthentication>
</dmnsvc:WebContext.Authentication>
</dmnsvc:WebContext>
</Application.ApplicationLifetimeObjects>
希望这会有所帮助:)