WCF RIA 部署问题(用户认证)

yydgfh 2013-12-03 08:46:07
我新建了一个WCF RIA工程(Silverlight 业务应用程序),F5运行是没有问题的,但是部署到IIS8上,执行就出现了“查询GetUser的Load操作失败,远程服务器返回了错误NotFound。”,我翻查了网上的一些资料(http://www.silverlighthostingnews.com/index.php/archives/12),怀疑是认证数据库的问题,也不知道这个用户信息数据库存储在什么地方,只是看到配置文件中链接字符串是这样的(不知道是否确切)
<add name="DefaultConnection" connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=aspnet-BA1.Web-20131203191826;Integrated Security=True"
providerName="System.Data.SqlClient" />

我想把这个数据库集成到我现有的数据库中,这样方便我在APP中做用户管理,请教该如何做?

...全文
204 13 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
根据你的方法,数据库是合并了,非常感谢 但是发布到IIS上还是有问题,我做了一个简单的WCF的应用,就是访问数据库返回一个值,好像也有问题 操作过程中出现异常,结果无效。有关异常的详细信息,请查看 InnerException。 位于 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() 位于 Monitor.ServiceReference1.GetUserNameCompletedEventArgs.get_Result() 位于 Monitor.Home.tService_GetUserNameCompleted(Object sender, GetUserNameCompletedEventArgs e) 位于 Monitor.ServiceReference1.egServiceClient.OnGetUserNameCompleted(Object state) 服务器上svc服务是激活的,能看svc文件 我把服务引用改为IIS地址:http://localhost:8090/egService.svc 直接运行,报了一个异常:远程服务器返回了错误: NotFound。 发布到IIS上运行,就报告如下错误 操作过程中出现异常,结果无效。有关异常的详细信息,请查看 InnerException。 位于 System.ComponentModel.AsyncCompletedEventArgs.RaiseExceptionIfNecessary() 位于 Monitor.ServiceReference1.GetUserNameCompletedEventArgs.get_Result() 位于 Monitor.Home.tService_GetUserNameCompleted(Object sender, GetUserNameCompletedEventArgs e) 位于 Monitor.ServiceReference1.egServiceClient.OnGetUserNameCompleted(Object state) WCF这个发布确实挺麻烦的,学艺不精啊,请再帮我看看,如何解决
Bonjour-你好 2013-12-04
  • 打赏
  • 举报
回复
由于我这里部署后,连页面都访问不了,所以不好测试,但如果你那边能访问网页,而且只是数据库访问出现问题,那么或许可以这样更改:

1、我首先复制了你那个“空项目”中App_Data文件夹里面的Database2.mdf,用自己机器的Microsoft SQL Server Management Studio附加上Database2,并重命名为Database;

2、修改BA1.Web项目中的Web.config,把 <add name="DefaultConnection" connectionString="Data Source=(LocalDB)\v11.0;Initial Catalog=aspnet-BA1.Web-20131203191826;Integrated Security=True"
providerName="System.Data.SqlClient" /> 改为 <add name="DefaultConnection" connectionString="data source=你的IP;Initial Catalog=Database;user id=数据库登录的用户名;password=数据库登录密码"
providerName="System.Data.SqlClient" /> ,这样改完,调试也是没问题的;

3、调试时测试,注册用户名后,数据库就自动新增了几个表了。

yydgfh 2013-12-04
  • 打赏
  • 举报
回复
我把数据库拷贝到E:\wwwroot\Data\mydb.mdf 然后把链接字符串改为了 <add name="DefaultConnection" connectionString="Data Source=(LocalDB)\v11.0;AttachDbFilename=E:\wwwroot\Data\mydb.mdf;Integrated Security=True;Connect Timeout=30" providerName="System.Data.SqlClient" /> 好像还是不行,这个wwwroot是IIS 网站的根目录
Bonjour-你好 2013-12-04
  • 打赏
  • 举报
回复
引用 8 楼 u012733075 的回复:
啊? VS2013为何不提供这个模版了?这个是不是Silverlight Toolkit提供的模版,我有些忘记了 我把一个空工程上传到qq云里了,你看看 http://url.cn/RDLDay 此外,我确实在工程中看到这个local库了,也找到了这个库 http://url.cn/IvkRRj 我现在的目的就是要把这个数据发布到IIS上
嗯,好的,我试试看。 对于为何vs2013没有了wcf ria的相关模板,那是因为wcf ria将会成为一个开源项目!~
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
啊? VS2013为何不提供这个模版了?这个是不是Silverlight Toolkit提供的模版,我有些忘记了 我把一个空工程上传到qq云里了,你看看 http://url.cn/RDLDay 此外,我确实在工程中看到这个local库了,也找到了这个库 http://url.cn/IvkRRj 我现在的目的就是要把这个数据发布到IIS上
Bonjour-你好 2013-12-04
  • 打赏
  • 举报
回复
糟糕,忘了vs2013没有了wcf ria,所以“Silverlight 业务应用程序”的模板也没有了,楼主方便发个模板的项目吗?
Bonjour-你好 2013-12-04
  • 打赏
  • 举报
回复
我也试试新建一个项目部署,看看有没有你那样的问题~
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
是同一台机器,我就是想试验一下部署过程,这个错误关掉后,其他功能是正常的
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
对了,我用的VS2012,IIS8,应该说是比较新的了
Bonjour-你好 2013-12-04
  • 打赏
  • 举报
回复
你这个iis8跟开发是同一台机器吗?我看你连接字符串是LocalDB。
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
1,是直接部署(右键工程,选择“发布”) 2,两个目录 一个是 bin 一个是ClientBin 3,System.ServiceModel.DomainServices.Hosting.dll 和 System.ServiceModel.DomainServices.Server.dll 也被我搞到 bin 目录下了 4,网上说的两个跨域的配置文件我也放了在根目录下了, clientaccesspolicy.xml 和 CrossDomain.xml
yydgfh 2013-12-04
  • 打赏
  • 举报
回复
好了,已经解决了,是数据库链接配置的问题,我用WINDOWS身份认证来登陆,好像是失败的,应该IIS用户权限的问题,用SQLServer身份认证后就没有问题。 结贴了
Bonjour-你好 2013-12-03
  • 打赏
  • 举报
回复
你部署的步骤是怎样的?

8,756

社区成员

发帖
与我相关
我的任务
社区描述
WPF/Silverlight相关讨论
社区管理员
  • WPF/Silverlight社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧