我是c#的新手,但是我需要定义使用代码的一个地方(另一个文件)的charset并使用另一个地方。像这样:
Mapper.CreateMap<WebClientByteResult, WebClientStringResult>().ForMember(x => x.Content, opt => opt.Ignore()).AfterMap((be, str) =>
{
str.Content = Encoding.GetEncoding("CHARSET").GetString(be.Content);
});
也许这是一个愚蠢的问题,但我只是重写了一些代码而且对这门语言的经验很少。
答案 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只是重用它。