Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/silverlight/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Silverlight 在设计时和运行时设置全局属性_Silverlight_Wcf Ria Services_Silverlight 5.0 - Fatal编程技术网

Silverlight 在设计时和运行时设置全局属性

Silverlight 在设计时和运行时设置全局属性,silverlight,wcf-ria-services,silverlight-5.0,Silverlight,Wcf Ria Services,Silverlight 5.0,我正在开发一个包含WCF RIA服务的Silverlight 5应用程序。该应用程序将进行多次web服务调用,每次调用都需要传递username和password元素和dsn属性。其中一些调用将使用“系统管理员”用户名和密码,一些调用将使用用户自己的登录凭据。在所有情况下,将在用户登录时设置dsn值 所以我的问题是,在哪里储存所有这些?我现在将列出我的两个重要场景,希望有人能提供帮助 认证 我已经创建了一个自定义成员资格提供程序,它覆盖ValidateUser(字符串用户名、字符串密码)方法来实

我正在开发一个包含WCF RIA服务的Silverlight 5应用程序。该应用程序将进行多次web服务调用,每次调用都需要传递
username
password
元素和
dsn
属性。其中一些调用将使用“系统管理员”用户名和密码,一些调用将使用用户自己的登录凭据。在所有情况下,将在用户登录时设置
dsn

所以我的问题是,在哪里储存所有这些?我现在将列出我的两个重要场景,希望有人能提供帮助

认证

我已经创建了一个自定义成员资格提供程序,它覆盖
ValidateUser(字符串用户名、字符串密码)
方法来实际执行身份验证。该方法中的代码使用用户提供的用户名和密码(在加载主页时出现的子窗口中)调用web服务

在子窗口中,用户可以选择要使用的DSN;但我不知道如何将其发送到我的成员资格提供程序中的
ValidateUser()
方法

授权

一旦我对用户进行了身份验证,我需要服务器进行调用,以获取有关该用户的更多信息,并将其存储为其用户配置文件的一部分。这样,我以后可以在应用程序逻辑和UI元素中使用它。此调用将使用系统管理员凭据和用户在子窗口中选择的DSN

生成的代理确实为每个SOAP操作方法提供了
*已完成的
事件。我想我可以分配一个事件处理程序并在那里处理这个授权位。那么,在哪里可以存储系统管理员凭据,以便在客户端和服务器项目中访问它们

我已经实现了我的身份验证域服务,如下所示:

using System.ServiceModel.DomainServices.Hosting;
using System.ServiceModel.DomainServices.Server.ApplicationServices;

namespace THINKImportSystem.Web
{
  [EnableClientAccess]
  public class AuthenticationDomainService : AuthenticationBase<User>
  {
  }

  public class User : UserBase
  {
  }
}
使用System.ServiceModel.DomainServices.Hosting;
使用System.ServiceModel.DomainServices.Server.ApplicationServices;
名称空间THINKImportSystem.Web
{
[启用客户端访问]
公共类AuthenticationDomainService:AuthenticationBase
{
}
公共类用户:UserBase
{
}
}