当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > 当VS.NET2003遇上VS.NET2005,WebService部署何去何从

ASP.NET
asp.net DiscuzNT登录,退出的代码
ASP .NET中执行控件(如ImageButton、LinkButton等)命令不刷新页面
Microsoft SQL Server 2005 Express 远程访问设置详述,100%成功篇
使用.NET命令行编译器编译项目(如ASP.NET、C#等)
asp.net 去除viewstate
asp.net repeater实现批量删除
asp.net安全、实用、简单的大容量存储过程分页
asp.net 获取图片高度和宽度实例代码
在GridView中LinkButton的属性的应用(如何不用选中就删除这一行)
关于.net(C#)中的跨进程访问的问题
asp.net request.PathInfo实现的url重写
asp.net SqlDataReader绑定Repeater
ASP.NET 动态写入服务器端控件
Discuz .net版本中的短消息系统
asp.net动态加载用户控件,关于后台添加、修改的思考
.net Cookies安全性实践分析
配置Visual Studio 以调试.net framework源代码
asp.net 大文件上传 之 改版了的SlickUpload.HttpUploadModule(Krystalware.SlickUpload.dll)
asp.net Web站点风格切换的实现
asp.net 用户控件中图片及样式问题

ASP.NET 中的 当VS.NET2003遇上VS.NET2005,WebService部署何去何从


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-11-03   浏览: 146 ::
收藏到网摘: n/a

当VS.NET2003遇上VS.NET2005WebService部署何去何从作者:贺星河(hxhbluestar)时间:2005-1-16【问题描叙】重装操作系统之后,部署原来的Web Service出现无法访问、无法调试的问题【原编程环境】VS.NET2003(.NET Framework 1.1 SP1),Windows XP SP1【新编程环境】VS.NET2003(.NET Framework 1.1 SP1),VS.NET 2005 Beta1(.NET Framework 2.0 ),Windows XP SP2【问题解决过程】 因为原来的项目一直使用工具VS.NET 2003,所以虽然VS.NET 2005 Beta已经出来好久了,却没有时间细细品味,现在项目告一段落,终于有机会了。重装系统之后,所有工具都安装完毕,便将原来的Web Service源代码直接拷贝到 C:\Inetpub\wwwroot 目录下,在“Internet 信息服务(IIS)”中创建为虚拟目录,然后用 VS.NET2003打开部署,习惯性的(CTRL+F5)就开始运行了,一切正常,然后试着调用其中的一个方法,却总是出现如下错误: System.TypeInitializationException: The type initializer for 'System.Transactions.Diagnostics.DiagnosticTrace' threw an exception. ---> System.UnauthorizedAccessException: The source was not found, but some or all event logs could not be searched. Inaccessible logs: Security. at System.Diagnostics.EventLog.FindSourceRegistration(String source, String machineName, Boolean readOnly) at System.Diagnostics.EventLog.SourceExists(String source, String machineName) at System.Diagnostics.EventLog.SourceExists(String source) at System.Transactions.Diagnostics.DiagnosticTrace..cctor() --- End of inner exception stack trace --- at System.Transactions.Diagnostics.DiagnosticTrace.get_Verbose() at System.Transactions.Transaction.get_Current() at System.Data.Common.ADP.GetCurrentTransaction() at System.Data.Common.ADP.GetCurrentTransaction() at System.Data.ProviderBase.DbConnectionPool.GetFromTransactedPool(Transaction& transaction) at System.Data.ProviderBase.DbConnectionPool.GetConnection(Object owningObject) at System.Data.ProviderBase.DbConnectionFactory.GetConnection(DbConnectionBase owningConnection) at System.Data.ProviderBase.DbConnectionClosed.OpenConnection(DbConnectionBase outerConnection) at System.Data.ProviderBase.DbConnectionBase.Open() at System.Data.SqlClient.SqlConnection.Open() at Ezhi.DataAccess.DbHelper.DataAccessHelper.ExecuteDataset(CommandType commandType, String commandText, DataSet dsData, IDbDataParameter[] commandParameters) at Ezhi.DataAccess.AccessClass.MealModule.RestaurantAccess.GetData(RestaurantData dsData, Int32[] iID) at JolloRealService.EzhiServices.EzhiService.FillRestaurant() at JolloRealService.EzhiServices.EzhiService..ctor() 一看出现了“System.TypeInitializationException:”和“Security”的字眼,就知道是安全问题,但是到底问题出在哪里?我一头雾水:是程序的问题?是Windows SP2的问题?是权限的问题?等等等等。于是便想通过 F5 来调试看看,结果弹出如下警告框: 确实看到了“没有启用集成Windows身份验证“,初步确定是权限问题,点击帮助,就进入了MSDN的如下地址页面ms-help://MS.VSCC.2003/MS.MSDNQTR.2003FEB.2052/vsdebug/html/vxtbsErrorDebuggingFailedBecauseIntegratedWindowsAuthenticationIsNotEnabled.htm 错误:调试失败,因为没有启用集成 Windows 身份验证由于没有启用集成 Windows 身份验证,单步执行 Web 应用程序或 XML Web services 失败。因此无法对要求调试的用户进行身份验证。启用集成 Windows 身份验证 1. 用管理员帐户登录到 Web 服务器。 2. 从“开始”菜单中,打开“管理工具”控制面板。 3. 在“管理工具”窗口中双击“Internet 信息服务”。 4. 在“Internet 信息服务”窗口中,使用树控件打开针对 Web 服务器命名的节点。 5. “Web 站点”文件夹出现在服务器名的下面。 6. 您可以为所有 Web 站点或个别 Web 站点配置身份验证。要为所有 Web 站点配置身份验证,请右击“Web 站点”文件夹并从快捷菜单中选择“属性”。要为个别 Web 站点配置身份验证,请打开“Web 站点”文件夹,右击个别 Web 站点,并从快捷菜单中选择“属性”。 7. 在“属性”对话框中,选择“目录安全性”选项卡。 8. 在“匿名访问和身份验证”部分,单击“编辑”按钮。 9. 在“身份验证方法”对话框的“已授权的访问”下,选择“集成 Windows 身份验证”