gpt4 book ai didi

c# - 我将如何编写 String.Format 扩展方法?

转载 作者:太空宇宙 更新时间:2023-11-03 17:08:57 24 4
gpt4 key购买 nike

我使用 String.Format在我的 C# 代码中,除了 if 语句外,它可能比任何东西都重要。

string ask = String.Format("Continue using [{0}]?", value);

我只需要考虑我使用它的频率。

接下来,我开始思考创建一个 Extension Method 会有多棒。

ask.Format("Continue using [{0}]?", value);

所以,我得看看 String.Format ,并且它有很多重载,因为有很多方法可以调用它。

嗯……这让事情变得复杂了。

有没有一种简单的方法来写一个Extension Method只是建立在 System.String 命名空间中已经存在的重载之上?

这是我希望看到的:

public static class Extensions
{
public static String Format(this String str, String formatText, /* What goes here? */)
{
return str.Format(formatText, /* Magic */);
}
}

我想我可以写一个重载来匹配每个String.Format重载,但这可能不是必需的。

最佳答案

ask.Format("Continue using [{0}]?", value);

不是我会如何使用它。这是我会做的:

var ask = "Continue using [{0}]?".FormatWith(value);

这是我的扩展方法:

public static string FormatWith(this string value, params object[] args)
{
return String.Format(value, args);
}

关于c# - 我将如何编写 String.Format 扩展方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16612080/

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