gpt4 book ai didi

visual-studio - 如何调试 : WCF service call works in VS, 但不在 IIS 中

转载 作者:行者123 更新时间:2023-12-04 06:36:55 26 4
gpt4 key购买 nike

我正在尝试使用 ASP.Net AuthenticationService 从我的 Silverlight 应用程序中对用户进行身份验证。我有一个 Web 应用程序,其服务指向“System.Web.ApplicationServices.AuthenticationService”。我的 web.config 定义了服务、端点、绑定(bind)、行为等。对于成员(member)数据库,我使用带有 MDF 文件的 SQL Express。

我相当确定所有这些设置都正确,因为如果我在 Visual Studio 中运行它,一切正常。我的 Silverlight 应用程序调用 AuthenticationService,传入用户名和密码,然后返回响应。

但是,当我部署到 IIS 时,调用 AuthenticationService 总是以异常响应:“远程服务器返回错误:未找到”

我怀疑这与 SQL Express 有关,但无法查明问题所在。我尝试在系统帐户下运行 SQL Express。我尝试为网络服务帐户授予对我的 App_Data 文件夹的完全权限。我尝试了很多不同的连接字符串。

无论如何,任何人都可以提供有关如何使用 AuthenticationService 和 SQL Express 和 IIS 部署 Silverlight 应用程序的任何提示或引用吗?

更新:我安装了 SQL Server 2008 的试用版并且得到了相同的结果。使用 Visual Studio 运行时,我可以让一切正常工作,但不能在 IIS 中运行。如果有人有关于如何在 IIS 中使用 Silverlight 的 AuthenticationService 的引用或教程,我将不胜感激。

更新 2:问题出在我在 SQL Server 中的身份验证设置上。正如评论中所建议的,我能够通过启用跟踪来跟踪这一点。我已将问题更新为关于如何调试此类问题,因为您的服务调用在 Visual Studio 中工作但在 IIS 中没有。

最佳答案

例如,我已将此代码添加到配置中:

<system.diagnostics>
<sources>
<source name="System.ServiceModel" switchValue="Critical,Error" >
<listeners>
<add name="xml" />
</listeners>
</source>
<source name="System.ServiceModel.MessageLogging" switchValue="Critical,Error">
<listeners>
<add name="xml" />
</listeners>
</source>
</sources>
<sharedListeners>
<add initializeData="D:\WcfLog.svclog" type="System.Diagnostics.XmlWriterTraceListener" name="xml" />
</sharedListeners>
<trace autoflush="true" />

Microsoft Service Trace Viewer 可以打开扩展名为“*.svclog”的文件。
Trace Viewer
现在异常(exception)情况更加明显。

关于visual-studio - 如何调试 : WCF service call works in VS, 但不在 IIS 中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4773026/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com