C# 在C语言中给一个对象一个方法#
有没有可能给出一个C#对象,比如C# 在C语言中给一个对象一个方法#,c#,C#,有没有可能给出一个C#对象,比如 public string Name { get { return _name; } set { _name = value; } } 执行以下操作的方法: private void addTextToName(){ _name = _name + " - Test"; } 所以我可以这样称呼它 Name.addTextToName(); 因为(我来自哪里)在JavaScript中,你可以用.prototype做这样的事情 在C#中有什么方法可
public string Name
{
get { return _name; }
set { _name = value; }
}
执行以下操作的方法:
private void addTextToName(){
_name = _name + " - Test";
}
所以我可以这样称呼它
Name.addTextToName();
因为(我来自哪里)在JavaScript中,你可以用.prototype做这样的事情
在C#中有什么方法可以做到这一点吗?是的,C#对象有一种方法(您在那里使用了一个字符串,但是…)
看看C#中所谓的“扩展方法”,因为我认为它们正是您所需要的
如需进一步参考,请参见此处:(神奇之处在于作为方法参数的this
)如果您询问我是否可以向字符串添加方法?那么是的。看看扩展方法
public static string AddTextToName(this string s)
{
return s + " - Test";
}
像这样使用它:
"Hello".AddTextToName();
将使用扩展方法返回Hello-test
class Program
{
static void Main()
{
Example e = new Example();
e.Name = "Hello World";
var x = e.Name;
var y = x.addTextToName();
Console.WriteLine(y);
Console.ReadLine();
}
}
class Example
{
public string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
}
public static class MyExtensions
{
public static string addTextToName(this string str)
{
return str += " - Test";
}
}
在您的示例中,
Name
是一个字符串,而不是一个类。