【问题标题】:How can I determine the project type of a VB.NET ASP project?如何确定 VB.NET ASP 项目的项目类型?
【发布时间】:2016-12-02 16:42:06
【问题描述】:

我很高兴获得一个旧网站to build

我收到“对象引用未设置为对象的实例”。但没有任何迹象表明这是(未)在哪里完成。

我可以解决 Resharper 发现的数以千计的问题:

...希望修复其中一个或某些组合最终可以清除该错误,但我认为更明智的方法是创建一个新项目,并逐步添加自定义文件夹和类等。但是,问题是要创建哪种类型的项目:ASP.NET 空网站、ASP.NET Web 窗体站点,还是什么?

我如何知道无法运行的遗留项目是哪种类型的项目,以便我可以效仿?信息是否隐藏在某个配置文件中?我可以根据遗留项目中包含的文件类型来判断吗?

它有以下文件夹:

App_Browsers 
App_Code
App_Data
A ton of custom folders (one for each customer), each of which has "Default.aspx" and "Default.aspx.vb" files within it.

然后是 *.aspx 文件、vwd.webinfo、web.config 和 website.publishproj 的 gobs

编辑

这不是那个问题的重复,或者至少接受的答案似乎不适用,因为这个项目中似乎没有任何 .xml 文件。

更新

我逐渐将旧项目中的文件夹和文件添加到新项目中,并在每个步骤中查看是否有任何问题。奇怪的是:它可以很好地重建(1 成功,0 失败,0 跳过);但是构建导致 0 成功、0 失败、1 更新、0 跳过...为什么重建成功,而构建既不成功也不失败 - 只是更新?

【问题讨论】:

  • 空引用异常具体说明了什么?它应该提供一些类名和/或堆栈跟踪。至于您的问题 - 由于 aspx 名称,您的项目很可能是网络表单
  • 不 - 2 次单击它无处可去,文件、行、列或项目下方没有任何内容(请参阅 stackoverflow.com/questions/40875865/…
  • 所以旧项目似乎是您所说的Asp.Net Web Site。网站是一个没有项目文件的旧式项目,因此您应该创建一个新的 Asp.Net Web 应用程序-项目并使用“添加现有项目”-工具来导入文件。然后从解决方案资源管理器中选择项目,然后从“项目”菜单中选择“转换为 Web 应用程序”,它将创建缺少的文件,例如 aspx 页面需要。祝你好运!
  • 在看到Esko的评论之前,我新建了一个VB > ASP.NET Web Applcation,得到,“已经添加了具有相同键的项目”;什么?!?
  • @AndrewMorton:在您提供的链接中,接受的答案是指“项目 XML 文件”,但我在这个项目中看不到 .xml 文件。

标签: asp.net vb.net


【解决方案1】:

没有一个坚如磐石、有保证的方法,但我过去曾使用此列表来提供帮助。在您的项目文件(不是解决方案文件)中,您查看<ProjectTypeGuids> 节点。该节点的值中列出的 guid 是项目正在使用的。通过删减一些东西,我已经能够使遗留项目(更多)加速。

https://www.codeproject.com/reference/720512/list-of-visual-studio-project-type-guids

请注意,这并不一定意味着如果您将代码直接移植到使用不同项目类型创建的新项目中,您的代码就会编译或运行。显然,框架和 API 发生了变化。

【讨论】:

  • 项目文件?我看到 *.sln、*.suo、*.master、*.aspx、*.aspx.vb、website.publishproj、vwd.webinfo 和 web.config
  • 啊,好的。如果没有项目 (*.vbproj) 文件,那么我认为最有可能的是 a) 从现有网站导入或 b) 使用 Visual Studio 中的新网站功能创建。无论哪种情况,都没有项目文件,因此没有项目类型。
猜你喜欢
  • 1970-01-01
  • 2012-11-16
  • 2019-06-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2020-01-23
相关资源
最近更新 更多