尽管目前已经基本不用 VS2003 作为主要开发工具了,但是今天打开 SubText 却发现它的 Web 工程却是用 ClassLirary 形式的工程来管理的。也就是说不需要在 IIS 创建一个 WEB 工程虚拟目录映射才能找开 WEB 工程,这样就会给我们带来极大的方便。在 VS2005 的 Web Site 也解决了这个问题,但是却带来了其实的问题,比如没有项目文件,无法很好地管理文件的排除与包含问题。
通过 SubText 项目中的 AspNetWithoutWebProjects.txt 介绍的地址( http://pluralsight.com/wiki/default.aspx/Fritz.AspNetWithoutWebProjects ),了解到在 VS2003 中可以通过修改一个环境文件和项目文件,可以达到就可以实现用 ClassLirary 的工程管理方式来管理 WEB 工程。这里记录下与大家共享。
打开 VS2003 的安装目录,并转到 VC#\CSharpProjectItems 目录下,可以看到还有两个子目录 WebProjectItems 和 LocalProjectItems ,先打开 WebProjectItems 下的 WebProjectItems.vsdir 文件 拷贝下:
CSharpAddWebFormWiz.vsz
CSharpAddWebServiceWiz.vsz
CSharpAddWebUserControl.vszdd
CSharpAddWebDataForm.vsz
这 4 行的完整代码。
然后转到 LocalProjectItems目录 ,打开 LocalProjectItems.vsdir 文件把上面拷贝的内容粘贴进来。
这一步操作的目的是让 ClassLirary 工程的右键添加新项的菜单中有添加 WebForm , Web 引用, WebUserControl, 等这些项,默认情况下是没有这些的,只有添加 WinForm 等不是 Web 工程特有的菜单。
对环境文件的修改这样就行了。接下来就要修改
Web
工程本身的文件。打开项目工程
(.csproj)
文件,把:
ProjectType = "Web"
改为
ProjectType = "Local"
。然后删除工程目录下的
.webinfo
文件,否则工程将无法打开。
如果工程被包含在一个解决方案文件中,要让解决方案能正常打开,需要打开.sln把对WEB工程改成普通工程的引用。如:
Project("{FAE04EC0
"http://localhost/WebApplication133/WebApplication133.csproj",
"{39CB
改为:
Project("{FAE04EC0
"WebApplication133.csproj",
"{39CB
也就是把URL地址去掉就行了。
这样Web工程就可以以ClassLirary的方式打开了,但如果要正确编译,甚至调试,还必须保证,输出路径设为:bin\ ;
把调试模式改为URL,单击“应用”,设置对应的启动URL就可以正常调试了。
(这里注意一点,没有点“应用”启动URL的输入框是灰色的不能输入。)
一个小技巧,这里做一下笔记。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 分享 3 个 .NET 开源的文件压缩处理库,助力快速实现文件压缩解压功能!
· Ollama——大语言模型本地部署的极速利器
· [AI/GPT/综述] AI Agent的设计模式综述