Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/asp.net-mvc/16.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 在MVC助手方法中打印每个单词的第一个字母_C#_Asp.net Mvc_Razor - Fatal编程技术网

C# 在MVC助手方法中打印每个单词的第一个字母

C# 在MVC助手方法中打印每个单词的第一个字母,c#,asp.net-mvc,razor,C#,Asp.net Mvc,Razor,我在MVC视图上有一个helper方法,它返回用户的名字和姓氏(Windows授权应用程序) 但结果是: System.Char[] 如果希望将第一个字母作为字符串而不是字符数组输出(为了使ToString工作),请使用字符串构造函数,我们将非常感谢您的帮助。这一点已经提到 但是,要使其工作,您确实需要将其包装在代码块中(@(…))。然后它会正确打印 @(new string(@AccountName().ToString().Split(' ').Select(x => x[0]).T

我在MVC视图上有一个helper方法,它返回用户的名字和姓氏(Windows授权应用程序)

但结果是:

System.Char[]

如果希望将第一个字母作为字符串而不是字符数组输出(为了使
ToString
工作),请使用字符串构造函数,我们将非常感谢您的帮助。这一点已经提到

但是,要使其工作,您确实需要将其包装在代码块中(
@(…)
)。然后它会正确打印

@(new string(@AccountName().ToString().Split(' ').Select(x => x[0]).ToArray()))

如果要将第一个字母作为字符串而不是字符数组输出(为了使
ToString
工作),请使用字符串构造函数。这一点已经提到

但是,要使其工作,您确实需要将其包装在代码块中(
@(…)
)。然后它会正确打印

@(new string(@AccountName().ToString().Split(' ').Select(x => x[0]).ToArray()))

我会使用整洁的正则表达式

// This could be compiled and cached.
var initialsRegex = new Regex(@"(\b[a-zA-Z])[a-zA-Z]*\.* ?"); 

// This gives the initials
var initials = initialsRegex.Replace(AccountName, "$1");

这也将包括包含带有
首字母缩写的名称,即John S.Doe

我将使用整洁的正则表达式

// This could be compiled and cached.
var initialsRegex = new Regex(@"(\b[a-zA-Z])[a-zA-Z]*\.* ?"); 

// This gives the initials
var initials = initialsRegex.Replace(AccountName, "$1");
这也将包括包含带有
首字母缩写的姓名,即John S.Doe

您也可以尝试此功能

foreach (string s in @AccountName.Split(" ".ToCharArray()))
    shortName += s.Substring(0,1).ToUpper();
你也可以试试这个

foreach (string s in @AccountName.Split(" ".ToCharArray()))
    shortName += s.Substring(0,1).ToUpper();

该字符数组包含名字和姓氏的第一个字母。。您已经有了自己的答案,即字符数组包含名字和姓氏的第一个字母。。你已经有了自己的答案我需要让这段代码在MVC视图上工作…那么,为什么它不工作?键入预期的编译错误。如果你只是将其包装在块
@(…)
?你是对的。。。非常感谢。我需要让这段代码在MVC视图上工作…那么,为什么它不工作呢?键入预期的编译错误。如果您只是将其包装在块
@(…)
?您是对的。。。非常感谢。