Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/291.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
C# 使用WCF RIA服务在非本地服务器上进行身份验证(Silverlight 4)_C#_Asp.net_Authentication_Silverlight 4.0_Wcf Ria Services - Fatal编程技术网

C# 使用WCF RIA服务在非本地服务器上进行身份验证(Silverlight 4)

C# 使用WCF RIA服务在非本地服务器上进行身份验证(Silverlight 4),c#,asp.net,authentication,silverlight-4.0,wcf-ria-services,C#,Asp.net,Authentication,Silverlight 4.0,Wcf Ria Services,我正在使用WCF RIA服务和Silverlight 4构建一个站点。我的用户数据库,标准的ASPNETDB用户存储,位于我的服务器上,而不是本地开发机器上。我已经使用Silverlight业务应用程序模板创建了一个新项目。我仍然熟悉如何为WCF RIA开发,所以请耐心听我说。我想指出我服务器上提到的ASPNETDB,这样我就可以通过我的web应用程序和ASP.NET网站管理工具创建用户并进行身份验证。为此,我对Web.config进行了如下编辑: <membership defaultP

我正在使用WCF RIA服务和Silverlight 4构建一个站点。我的用户数据库,标准的ASPNETDB用户存储,位于我的服务器上,而不是本地开发机器上。我已经使用Silverlight业务应用程序模板创建了一个新项目。我仍然熟悉如何为WCF RIA开发,所以请耐心听我说。我想指出我服务器上提到的ASPNETDB,这样我就可以通过我的web应用程序和ASP.NET网站管理工具创建用户并进行身份验证。为此,我对Web.config进行了如下编辑:

<membership defaultProvider="MySqlMembershipProvider" userIsOnlineTimeWindow="15">
   <providers>
     <add name="MySqlMembershipProvider" type="System.Web.Security.SqlMembershipProvider, System.Web, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" connectionString="myConnectionString" applicationName="riaSilverlightSite"/>
   </providers>
 </membership>

我还将服务器数据库的连接字符串添加到了Web.config中

<add name="myConnectionString" connectionString="Data Source=server\SQLEXPRESS,2301;Database=aspnetdb;Integrated Security=SSPI;"/>

当我尝试通过ASP.NET网站管理工具访问数据存储时,出现以下错误: 所选数据存储有问题。这可能是由于服务器名称或凭据无效,或者权限不足造成的。也可能是由于未启用角色管理器功能造成的。单击下面的按钮可重定向到可以选择新数据存储的页面

以下消息可能有助于诊断问题:尝试初始化System.Data.SqlClient.SqlConnection对象时出错。为连接字符串提供的值可能错误,或者可能包含无效语法。参数名称:connectionString“

  • 在使用WCF RIA服务开发应用程序时,此工具仍然可用吗
  • 我是否需要在Web.config中进行其他更改,以便使用此工具添加/编辑用户/角色
  • 我是否需要创建特定于WCF RIA项目结构的其他类以方便我的自定义提供者?(即域服务类等)

  • 提前谢谢。如果我的问题需要澄清,请告诉我。

    如果您的数据库不在web服务器上,则无法使用模拟来使用SSPI身份验证。模拟可用于IIS和web server box,但不能传播到其他计算机上的SQL server


    这是一个常见的问题,到目前为止,我还不知道有什么解决办法。您必须依靠web应用程序的身份为您进行身份验证。

    这很公平。我想我最终要做的是创建一个带有测试数据的本地.mdf文件,该文件将被签入源代码管理。Web.debug.config将指向此本地文件。将解决方案部署到服务器时,Web.release.config将指向服务器本身上的SQL数据库。