我正在调试一些代码并注意到一堆自动生成的方法和对象。
在这些代码的顶部,我找到以下注释:
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.42
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
如何你弄清楚生成代码的原因是什么?我的好奇心在这方面变得更好,所以这就是我问的原因。我已经在Google上查找了部分评论,但没有找到具体内容。
答案 0 :(得分:2)
完全取决于代码是什么。
据推测,您知道正在调试的类 - 它是否是ORM的一部分,是Web服务生成代理的一部分等。这是关键信息。
答案 1 :(得分:2)
//------------------------------------------------------------------------------
// <auto-generated>
// This code was generated by a tool.
// Runtime Version:2.0.50727.42
//
// Changes to this file may cause incorrect behavior and will be lost if
// the code is regenerated.
// </auto-generated>
//------------------------------------------------------------------------------
namespace FirstWeb
{
public partial class _Default
{
/// <summary>
/// form1 control.
/// </summary>
/// <remarks>
/// Auto-generated field.
/// To modify move field declaration from designer file to code-behind file.
/// </remarks>
protected global::System.Web.UI.HtmlControls.HtmlForm form1;
}
}
您不会更改此自动生成的C#文件。当您继续向页面添加ASP.NET控件时,此文件随附加声明而增长。在旧版本的C#(2.0版之前)和Visual Studio(版本2005之前)中,此代码也将位于常规Default.aspx.cs文件中。
通过在C#中引入部分类,属于同一类的代码可以分割为多个文件。在这里,您可以看到“public partial class _Default”,它用于保存由Visual Studio设计器生成的代码。您将在Default.aspx.cs文件中看到相同的类签名(您可以使用它来编写自己的自定义代码)。
因此,开发人员(您)和设计人员(Visual Studio)可以独立工作而不会相互踩踏。
答案 2 :(得分:1)
对我来说看起来像Visual Studio。 Try Googling only part of the message
答案 3 :(得分:1)
这也可以是ResXFileCodeGenerator生成的.Designer.cs文件,它为.resx文件生成强类型包装。
答案 4 :(得分:0)
嗯,它的代码是什么?大多数MS工具都包含此标头。 xsd.exe
确实,sqlmetal
(LINQ-to-SQL)等等。尝试向下看几行...例如,对我来说快速xsd测试显示第二个注释块:
//
// This source code was auto-generated by xsd, Version=2.0.50727.3038.
//
但这在LINQ-to-SQL代码中不存在......; - (
答案 5 :(得分:0)
我认为这段代码是由Linq to SQL引擎生成的。
如果您了解如何使用Sql Enities
进行编码,则可以对其进行修改答案 6 :(得分:0)
这些评论与我的某些服务参考文件中的评论完全匹配。这些是为WCF服务生成的代理文件,因此您的代码也可能在此区域。
如果在解决方案资源管理器中看不到这些文件,请单击“显示所有文件”,它们将在服务引用节点中显示为.cs文件。
答案 7 :(得分:0)
这是System.CodeDom从整个代码编译单元生成文件时生成的确切注释。
答案 8 :(得分:0)
Microsoft的{({3}})SVCUTIL工具将在每个文件的顶部生成带有此注释的源代码文件,而不会将自己标识为生成该文件的工具。