颇费周折后,其实很简单,只需要生成designer文件后,重新保存所有页面即可。就是懒得写。懒真的是一种病,手上不能懒,脑子里更不能懒,否则就是给自己挖坑,仔细认真,注意细节!!!!
PS:注意修改path变量为自己需要生成的web项目路径
class Program
{
static void Main(string[] args)
{
var path = "E:\\codes\\SoTop\\SoTop.Web";
ProcessDirectory(new DirectoryInfo(path));
Console.WriteLine("处理完毕");
Console.ReadKey();
}
private static void ProcessDirectory(DirectoryInfo directory)
{
ProcessMask(directory, ".ascx", ".cs");
ProcessMask(directory, ".aspx", ".cs");
foreach (DirectoryInfo directoryInfo in directory.GetDirectories())
ProcessDirectory(directoryInfo);
}
private static void ProcessMask(DirectoryInfo directory, string maskStart, string maskEnd)
{
FileStream fs;
foreach (FileInfo file in directory.GetFiles(string.Format("*{0}{1}", maskStart, maskEnd)))
{
string designerFileName = file.Name.Replace(string.Format("{0}{1}", maskStart, maskEnd), string.Format("{0}.designer{1}", maskStart, maskEnd));
if (directory.GetFiles(designerFileName).Length == 0)
{
using (fs = File.Create(Path.Combine(directory.FullName, designerFileName)))
{
fs.Close();
}
}
}
}
}