C# 你能用C来定义C中的函数吗#

C# 你能用C来定义C中的函数吗#,c#,c,macros,C#,C,Macros,我有一个代码问题,我可以通过使用旧的C宏定义来解决。然而,C语言不支持这种定义。有没有别的办法解决我的问题 在多个类和多个方法中,我有以下代码: MyLanguageClass.Instance.GetText("download_id", this.GetType(), System.Reflection.MethodBase.GetCurrentMethod()); (MyLanguageClass是我编写的代码。)因此,我使用类类型和当前方法作为id的一部分来获取字符

我有一个代码问题,我可以通过使用旧的C宏定义来解决。然而,C语言不支持这种定义。有没有别的办法解决我的问题

在多个类和多个方法中,我有以下代码:

MyLanguageClass.Instance.GetText("download_id", 
    this.GetType(), 
    System.Reflection.MethodBase.GetCurrentMethod());
(MyLanguageClass是我编写的代码。)因此,我使用类类型和当前方法作为id的一部分来获取字符串。(字符串是在程序的另一部分中定义和填充的,但是对于这个问题,这些并不是重要的细节。)但是GetType和GetCurrentMethod总是相同的,因此我希望它们被一个#define宏替换,就像在C中一样。另一方面,我不能在函数中放一些东西,与其他情况类似,您可能会使用C宏定义的“fake”函数,因为我想使用代码中位置的当前类和当前方法,在这里我调用GetText。原则上,我的函数的所有用户都应该键入如下内容:

MyLanguageClass.Instance.GetText("download_id", "use classtype and current method as part of the id");

使用该函数的程序员不必担心所使用的反射细节等等。有什么想法吗?

相关:您可以使用using指令:@Daniel,这是.NET Framwork 4.0,C#4.0谢谢您。这使得代码更好一些,然后我可以制作一些类似GetText(“Id”,GetType(),);但我仍然必须在函数调用中包含类型信息,据我判断。