好的,“honeymoose”。在 Visual Studio 2022 中开发我们之前讨论的 ASP.NET (Web Forms) 调用远程 Web Service 的项目,步骤和体验与早期版本的 Visual Studio 非常相似,但 VS 2022 带来了一些界面上的改进和性能提升。
以下是如何在 Visual Studio 2022 中进行开发:
1. 安装 Visual Studio 2022 及相关工作负载
- 如果你还没有安装 Visual Studio 2022,请从 Visual Studio 官网 下载并安装。
- 在安装过程中(或通过 Visual Studio Installer 修改现有安装),确保选择了 “ASP.NET and web development” 工作负载。这个工作负载包含了创建 ASP.NET Web Forms 项目所需的一切。
2. 创建新的 ASP.NET Web Application 项目
- 打开 Visual Studio 2022。
- 在启动窗口,选择 “Create a new project”。
- 在 “Create a new project” 对话框中,搜索模板:
- 在顶部的搜索框中输入
ASP.NET Web Application。 - 非常重要: 选择带有 “.NET Framework” 标签的 “ASP.NET Web Application (.NET Framework)” 模板。不要选择 .NET Core 或 .NET 5/6/7/8 的 ASP.NET Core Web App,因为我们讨论的是传统的 ASP.NET Web Forms。
- 语言选择 C# (或 VB.NET,如果需要)。
或者访问:Visual Studio 2022 调试老的 ASP 网站时候找不项目模板
- 在顶部的搜索框中输入
- 点击 “Next”。
- 配置你的新项目:
- Project name: 例如
WebServiceDemoAppVS2022 - Location: 选择项目保存的文件夹。
- Solution name: 可以与项目名相同或自定义。
- Framework: 选择一个较新的 .NET Framework 版本,例如 .NET Framework 4.7.2 或 4.8 (VS 2022 通常会默认推荐最新的支持版本)。
- Project name: 例如
- 点击 “Create”。
- 选择项目模板:
- 选择 “Empty” 模板。
- 在 “Add folders and core references for:” 部分,勾选 “Web Forms”。
- 身份验证可以保持 “No Authentication” (除非你的项目有特定需求)。
- 高级设置中,通常不需要勾选 “Configure for HTTPS” (除非你的本地开发也必须使用HTTPS,对于调用外部服务,这通常不影响)。
- 点击 “Create”。
3. 添加服务引用 (Add Service Reference)
这个步骤与之前在旧版VS中的操作完全相同:
- 在 解决方案资源管理器 (Solution Explorer) 中,右键点击你的项目名称 (例如
WebServiceDemoAppVS2022)。 - 选择 “Add” → “Service Reference…”。
- 在某些VS 2022版本中,它可能在 “Add” → “Connected Service” 下,然后选择 “Microsoft WCF Web Service Reference Provider”。但通常 “Service Reference…” 还是直接可见的。
- 在某些VS 2022版本中,它可能在 “Add” → “Connected Service” 下,然后选择 “Microsoft WCF Web Service Reference Provider”。但通常 “Service Reference…” 还是直接可见的。
- 在 “Add Service Reference” 对话框中:
- Address: 输入 WSDL 地址:
http://webservices.oorsprong.org/websamples.countryinfo/CountryInfoService.wso?WSDL - 点击 “Go”。
- Namespace: 输入一个命名空间,例如
CountryInfoServiceRef。 - 点击 “OK”。
- Address: 输入 WSDL 地址:
4. 创建 Web Form 页面 (.aspx)
- 在 解决方案资源管理器 中,右键点击项目名称 (或你希望添加页面的文件夹)。
- 选择 “Add” → “New Item…”。
- 在 “Add New Item” 对话框中,从左侧选择 “Web” (或者直接在搜索框搜索)。
- 选择 “Web Form”。
- 给它一个名称,例如
Default.aspx。 - 点击 “Add”。
5. 编写界面代码 (Default.aspx) 和后端代码 (Default.aspx.cs)
-
界面代码 (
Default.aspx):- 双击
Default.aspx文件打开它。 - 你可以切换到底部的 “Source” 视图来直接编辑 HTML 和 ASP.NET 标记。
- VS 2022 提供了优秀的 IntelliSense (代码补全) 支持。
- 将之前示例中的
Default.aspxHTML 内容粘贴到这里。
- 双击
-
后端代码 (
Default.aspx.cs):- 右键点击
Default.aspx在解决方案资源管理器中,然后选择 “View Code” (或者直接展开Default.aspx并双击Default.aspx.cs)。 - VS 2022 的 C# 编辑器功能强大,包括 IntelliCode (AI 辅助的 IntelliSense)、代码分析、重构等。
- 将之前示例中的
Default.aspx.csC# 代码内容粘贴到这里。 确保using WebServiceDemoAppVS2022.CountryInfoServiceRef;(或你为项目和 Service Reference 设置的相应命名空间) 是正确的。
- 右键点击
6. 检查 web.config
- Visual Studio 2022 在添加服务引用时会自动更新
web.config文件,添加<system.serviceModel>部分,与之前示例中的内容类似。 - 你可以双击解决方案资源管理器中的
web.config文件来查看和编辑它。 - 确保在
Default.aspx.cs中实例化服务客户端时使用的终结点名称与web.config中<client><endpoint name="THIS_NAME">的name属性匹配。
7. 运行和调试项目
- 设置启动页: 在解决方案资源管理器中,右键点击你的
Default.aspx(或你想要作为应用起始点的页面),选择 “Set As Start Page”。 - 运行项目:
- 按 F5 (或点击工具栏上的绿色播放按钮,通常显示为 “IIS Express (Your Browser)”) 来启动应用程序并进行调试。
- 按 Ctrl+F5 (或 “Debug” → “Start Without Debugging”) 来启动应用程序而不附加调试器。
- Visual Studio 2022 会启动 IIS Express (一个轻量级的 Web 服务器) 并在你默认的浏览器中打开你的 Web 应用程序。
- 调试:
- 你可以在
.aspx.cs代码中设置断点。当代码执行到断点时,程序会暂停,你可以检查变量值、单步执行代码 (F10, F11)、查看调用堆栈等。 - VS 2022 的调试工具非常成熟。
- 你可以在
Visual Studio 2022 的一些额外优势:
- 更快的性能: VS 2022 是一个 64 位应用程序,通常比早期版本加载和运行项目更快。
- 改进的 IntelliCode: AI 辅助的代码完成功能更加智能。
- Git 集成: 内置了强大的 Git 版本控制支持。
- 热重载 (Hot Reload): 对于 ASP.NET Web Forms (.NET Framework),热重载功能可能有限,主要体现在对正在运行的应用进行代码更改后(通过“编辑并继续”),有时可以立即看到效果而无需完全重启。但它不像 .NET Core/5+ 中那样全面。对于静态文件 (HTML, CSS, JS) 的更改,通常可以刷新浏览器看到。对于 C# 代码更改,通常需要重新编译并可能重启调试会话,或者依赖“编辑并继续”功能。
总的来说,开发流程与你在其他版本 Visual Studio 中习惯的非常相似。关键是选择正确的项目模板 “ASP.NET Web Application (.NET Framework)” 并使用 “Service Reference” 功能来连接到 SOAP Web Service。
如果你在特定步骤遇到问题,或者VS 2022的界面与描述略有不同,请随时告诉我,我可以提供更具体的截图或指导。







