传递变量/参数以便在另一个地方使用

时间:2016-05-19 06:53:30

标签: c#

我是c#的新手,但是我需要定义使用代码的一个地方(另一个文件)的charset并使用另一个地方。像这样:

Mapper.CreateMap<WebClientByteResult, WebClientStringResult>().ForMember(x => x.Content, opt => opt.Ignore()).AfterMap((be, str) =>
        {
            str.Content = Encoding.GetEncoding("CHARSET").GetString(be.Content);
        });

也许这是一个愚蠢的问题,但我只是重写了一些代码而且对这门语言的经验很少。

2 个答案:

答案 0 :(得分:1)

你有多种可能性。

您可以使用ChartSet枚举。 MSDN

或为此目的编写自己的枚举

public enum CharSet
{
    Charset1,
    Charset2,
    Charset3
}

或使用带字符串的静态类。

public static class CharSet
{
    public static string Charset1 = "CHARSET1";
    public static string Charset2 = "CHARSET2";
    public static string Charset3 = "CHARSET3";
}

还有一些可能性。但我想在你的情况下,这可能是简单的解决方案。作为公共课,您只需要在导入中引用该类,您可以随意访问它们。

喜欢(Enum)

CharSet.Charset1; - // will return the enum -> to get a string use .toString()

或(静态类)

CharSet.Charset1  - // will return the string

我希望这会有所帮助

Greez Iki

答案 1 :(得分:0)

我仍然不确定我是否真的明白了。

但不知何故,你必须协调你的方法调用。

ParsePage1.Parse()
ParsePage2.Parse()
ParsePage3.Parse()

您可以将静态类作为方法参数传递

public static class CharSet
{
    public static string Charset1 = "iso-8859-1";
    public static string Charset2 = "iso-8859-1";
} 

public static class Programm()
{
   public static Main(){
       ParsePage1.Parse(CharSet.Charset1);
       ParsePage2.Parse(CharSet.Charset1);
       ParsePage3.Parse(CharSet.Charset2);
    }
}
这是什么意思? - 所以你定义你的charset只是重用它。