千家信息网

.NET 6常量内插字符串怎么用

发表于:2025-01-20 作者:千家信息网编辑
千家信息网最后更新 2025年01月20日,这篇文章主要介绍了.NET 6常量内插字符串怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇.NET 6常量内插字符串怎么用文章都会有所收获,下面我们一起来看看吧。如
千家信息网最后更新 2025年01月20日.NET 6常量内插字符串怎么用

这篇文章主要介绍了.NET 6常量内插字符串怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇.NET 6常量内插字符串怎么用文章都会有所收获,下面我们一起来看看吧。

如下代码:

string scheme = "https";string host = "xxx.com";int port = 8080;Console.WriteLine(string.Format("{0}://{1}:{2}", scheme, host, port));

但是,这种替换方式容易会产生错误,比如写错参数顺序,索引数字无效等。

因此,推荐的写法是使用字符串内插,代码如下:

Console.WriteLine($"{scheme}://{host}:{port}");

这样更容易阅读,而变量的值会被直接替换到字符串中。

一、常量内插字符串

当所有字符串都是常量时,在.NET 6之前,是不能使用字符串内插的,只是使用+拼接字符串:

而在.NET 6,我们已经可以对常量使用内插字符串,代码如下:

const string FirstName = "My";const string LastName = "IO";const string FullName = $"{FirstName} {LastName}";

需要注意的是,内插字符串中的常量不能是数字:

这是因为,数字常量转换为字符串是有区域性区分的,而区域性只有在运行时才能获得:

Console.WriteLine($"{1234.56}"); // output: 1234.56Thread.CurrentThread.CurrentCulture= new CultureInfo("es-ES");Console.WriteLine($"{1234.56}"); // output: 1234,56

结论:

对于Attribute使用参数时,常量内插字符串将非常方便,如下代码:

public class xxClass{    [Obsolete($"Use {nameof(NewMethod)} instead")]    public void OldMethod() { }    public void NewMethod() { }}

这样,我们可以不用在Message中硬编码方法名称了。

关于".NET 6常量内插字符串怎么用"这篇文章的内容就介绍到这里,感谢各位的阅读!相信大家对".NET 6常量内插字符串怎么用"知识都有一定的了解,大家如果还想学习更多知识,欢迎关注行业资讯频道。

0