gpt4 book ai didi

C# - 添加到现有(生成的)构造函数

转载 作者:太空狗 更新时间:2023-10-30 01:27:28 25 4
gpt4 key购买 nike

我在生成的代码中有一个构造函数。我不想更改生成的代码(因为它会在我重新生成时被覆盖),但我需要向构造函数添加一些功能。

下面是一些示例代码:

// Generated file
public partial class MyGeneratedClass
{
public MyGeneratedClass()
{
Does some generated stuff
}
}

我能想出的唯一解决办法是:

// My hand made file
public partial class MyGeneratedClass
{
public MyGeneratedClass(bool useOtherConstructor):this()
{
do my added functinallity
}
}

我相当确定这会起作用,但是我的构造函数有一个未使用的蹩脚参数,我必须全部更改它们。有没有更好的办法?如果不是那也没关系,但我想我会问。

最佳答案

如果您使用的是 C# 3 并且可以更改生成器,则可以使用 partial methods :

// MyGeneratedClass.Generated.cs
public partial class MyGeneratedClass
{
public MyGeneratedClass()
{
// Does some generated stuff
OnConstructorEnd();
}

partial void OnConstructorEnd();
}

// MyGeneratedClass.cs
public partial class MyGeneratedClass
{
partial void OnConstructorEnd()
{
// Do stuff here
}
}

关于C# - 添加到现有(生成的)构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2759577/

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