asp.net asp.net application 升级到 asp.net web 解决找不到控件 批量生成.designer文件

颇费周折后,其实很简单,只需要生成designer文件后,重新保存所有页面即可。就是懒得写。懒真的是一种病,手上不能懒,脑子里更不能懒,否则就是给自己挖坑,仔细认真,注意细节!!!!

PS:注意修改path变量为自己需要生成的web项目路径

需要注意的是,CodeBehind的路径是绝对路径

参考链接https://oomake.com/question/4935

对于VS2015 ...这里有一个用于从WebSite项目切换到适用于我的Web应用程序项目的VB示例。没有其他解决方案为我工作,这就是为什么我分享这个。这不是优雅,但工作。 第0步:在项目中将所有“CodeFile =”替换为“CodeBehind =” 第1步:关闭解决方案。 第2步:使用以下代码运行本地Windows应用程序(下面的步骤)。 第3步:重新打开解决方案。 第4步:在解决方案资源管理器中,确保显示所有文件,并搜索designer.vb(或C#的designer.cs) 第5步:选择所有丢失的文件,并将它们包含在您的项目中。 第6步:对于每个文件,查看主页/控制并保存。

 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();
                    }
                }
            }
        }
    }

  

原文地址:https://www.cnblogs.com/zinan/p/10747779.html

时间: 2024-08-16 06:53:30

asp.net asp.net application 升级到 asp.net web 解决找不到控件 批量生成.designer文件的相关文章

ASP.NET自定义Web服务器控件-DropDownList/Select下拉列表控件

using System; using System.Collections.Generic; using System.ComponentModel; using System.Linq; using System.Text; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; //自定义web服务器控件-下拉列表 namespace MyControls { [DefaultProperty("Tex

Delphi中一些DLL的运用(要传递Application和Screen,似乎还忘了传递提示控件)

dll 调用部分: {****************************************************************} { } { Project: DllDebug } { Copyright(c) 2003, 2005 } { Unit for UCommonUnit } { Create : 2003-01-05 by 林红卫 } { Modify : 2003-01-16 by 林红卫 } { } {***************************

asp.net 用户控件

转载自http://www.cnblogs.com/SkySoot/archive/2012/09/04/2670678.html 在 .NET 里,可以通过两种方式把自己的控件插入到 Web 窗体框架中: 用户控件:它是一小段页面,可以包括静态 HTML 代码和 Web 服务器控件.用户控件的好处是一旦创建了它,就可以在同一个 Web 应用程序的多个页面重用它.用户控件可以加入自己的属性,事件和方法. 自定义服务器控件:它是被编译的类,它通过编程生成自己的 HTML .服务器控件总是预编译到

(九)ASP.NET自定义用户控件(2)

http://www.cnblogs.com/SkySoot/archive/2012/09/04/2670678.html 用户控件 在 .NET 里,可以通过两种方式把自己的控件插入到 Web 窗体框架中: 用户控件:它是一小段页面,可以包括静态 HTML 代码和 Web 服务器控件.用户控件的好处是一旦创建了它,就可以在同一个 Web 应用程序的多个页面重用它.用户控件可以加入自己的属性,事件和方法. 自定义服务器控件:它是被编译的类,它通过编程生成自己的 HTML .服务器控件总是预编译

Asp.Net控件的客户端命名

我们在用ASP.NET写出来的网页,用浏览器来查看生成的客户端代码的时候经常看到这样的代码:GridView1_ctl101_WebUserControl1_webuserControlButton,那么这个命名有什么规律,是怎么来的拉?本次我们使用Reflector查看.net的代码研究其中的规律. 我们的ASP.NET服务器端控件在生成客户端控件的时候一般有id 和name两个属性,这两个属性我们在服务器端可以通过ClientID和UniqueID来得到.以一个Button为例,用Refle

ASP.NET 中服务器控件和html控件的使用

Asp.net开发中,控件无疑给开发人员带来了方便,大大提高了开发速度,如果纯粹的用托控件方式来开发网站,我想应该没有其他什么开发工具能够拼的过visual studio(以下简称vs)了.一个企业站用1~2天就可以完成,如果要求简单的,估计半天就搞定,这样开发速度,估计有些人还不信. 然而,使用vs开发就是托控件吗?回答是否定的.这个要根据实际情况来选择到底是不是该用服务器控件.下面,天智海网络就和大家浅谈下什么时候适合用服务器控件,而什么情况则应该少用或者不用服务器控件. 首先,用不用服务器

第一篇:初识ASP.NET控件开发_第一节:控件类及其继承关系

1)System.Web.UI.Control(以下简称Control) Control 类是包括自定义控件.用户控件和页在内的所有 ASP.NET 服务器控件的基类..定义由所有 ASP.NET 服务器控件共享的属性.方法和事件. 命名空间:System.Web.UI程序集:System.Web(在 system.web.dll 中) 2)System.Web.UI.WebControls.WebControl(以下简称WebControl) WebControl 类是 System.Web.

ASP.NET AJAX入门系列(11):在多个UpdatePanle中使用Timer控件

本文将使用Timer控件更新两个UpdatePanel控件,Timer控件将放在UpdatePanel控件的外面,并将它配置为UpdatePanel的触发器,翻译自官方文档. 主要内容 在多个UpdatePanel中使用Timer控件 1.添加一个新页面并切换到设计视图. 2.如果页面没有包含ScriptManager控件,在工具箱中的AJAX Extensions标签下双击ScriptManager控件添加到页面中. 3.双击Timer控件添加到Web页面中.Timer控件可以作为Update

asp.net ImageMap控件

ImageMap 控件可创建包含定义的作用点区域的图像.当用户单击作用点区域时,该控件可生成到服务器的回发或导航到指定的 URL 首先是添加一个asp:ImageMap 选择asp:CircleHotSpot表示圆形,rectangleHotSpot表示矩形,剩下的那个表示多边形. 下面的网址必须是http开头的,否则就是一个相对的网址了. 运行后如下,当鼠标移到图片指定的区域后,会变成手型,点击后页面跳转到百度.