gpt4 book ai didi

asp.net - 将 ASP.NET 页面批量移动到新的命名空间?

转载 作者:行者123 更新时间:2023-12-04 16:56:46 30 4
gpt4 key购买 nike

我有一个 C# ASP.NET Web 应用程序项目,其中所有页面都在全局/默认/顶级命名空间中。 (我没有明确的命名空间声明。当我在 Red Gate 的 .NET Reflector 中查看我编译的 Web 应用程序的 DLL 时,我可以验证所有类都在顶级 .NET 命名空间中。)有没有好的自动化方法移动所有页面和自定义控件到一个新的命名空间,说“MyWebApplication”?理想情况下,只使用 Visual Studio 会很好,但如果有必要,我愿意考虑使用商业重构工具。

我想也许通过在项目的应用程序属性中设置“默认命名空间”属性,我可以让编译器隐式地将所有页面放入指定的命名空间,但事实并非如此;这个“默认命名空间”设置似乎使 Visual Studio 将显式命名空间声明插入到新页面中,而不是隐式影响任何现有页面的命名空间。

如果重要的话,我的直接动机是尝试在我的 Web 应用程序上运行静态分析工具 (CAT.NET);该工具似乎有一两个在全局命名空间中使用代码的怪癖。

最佳答案

Chris 这可能看起来很傻,因为您已经准备好为重构工具付费来完成它。但考虑一下:

默认情况下,命名空间在代码隐藏文件中声明为项目/应用程序名称。因此,如果您的项目名称是 MyWeb,则默认命名空间将是

namespace MyWeb
{

public partical class MyWebPage....

现在这在 ASPX 页面中被引用如下:
 <%Page ... CodeBehind="MyWebPage.aspx.cs" Inherits="MyWeb.MyWebPage"

您只需要更改这两件事即可使命名空间迁移生效。坦率地说,这可以使用 来实现。查找/替换 对话。请复制您的完整解决方案并尝试!

干杯

关于asp.net - 将 ASP.NET 页面批量移动到新的命名空间?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1358447/

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