.net 我试图创建一个扩展方法,但它没有给出正确的信息

.net 我试图创建一个扩展方法,但它没有给出正确的信息,.net,c#-4.0,extension-methods,.net,C# 4.0,Extension Methods,我试图创建一个扩展方法,但它并没有达到我想要的效果 这是我的扩展方法 public static string StringOptional(this string StartString, string AddOnString, int Length, Utility.PaddingSide Side) { string AddOnStringFormated; if (AddOnString != null) { AddOnStringFormated = Utili

我试图创建一个扩展方法,但它并没有达到我想要的效果

这是我的扩展方法

public static string StringOptional(this string StartString, string AddOnString, int Length, Utility.PaddingSide Side)
{
    string AddOnStringFormated;
    if (AddOnString != null)
    { AddOnStringFormated = Utility.FixedLengthString(AddOnString, Length, Side); }
    else
    {
        string AddOnStringBlank = "";
        AddOnStringFormated = Utility.FixedLengthString(AddOnStringBlank, Length, Side);
    }
    string FinishString = Utility.FormatString(StartString, AddOnStringFormated);
    return FinishString;
}
在我的常规代码中

string LineTemp = "FirstLineOfCode";
string LineAdd = "SecondLine";
LineTemp.StringOptional(ImmOrNm, 23, Utility.PaddingSide.Right);
return LineTemp;

在LineTemp的末尾,应该将两个字符串一起格式化,但事实并非如此。为什么?

字符串是不可变的,您必须

 LineTemp = LineTemp.StringOptional(ImmOrNm, 23, Utility.PaddingSide.Right);

我不知道我怎么会忽视这一点