我正在尝试将我的类的对象数组转换为字符串数组。
在这个例子中,我有两个类。在我的一个类中,我想创建两个变量,即另一个类的对象。变量将是一个数组,另一个是“常规”变量。
两个班级名称。 ShowResult和Game。
在Game类中我写道:
private ShowResult[] _showResults;
private ShowResult _showResult;
在我的Game类的属性中,我尝试将这两个变量转换为字符串数组和字符串:
public string[] ShowResults
{
get { return _showResults.ToString().ToArray(); }
set { _showResults.ToString().ToArray() = value; }
}
public string ShowResult
{
get { return _showResult.ToString(); }
set { _showResult = value; }
}
这不起作用。我真的希望我的自定义对象转换为字符串数组和字符串。但我得到一个错误..我知道我可以,但我不知道如何......
如果有人有任何建议,我会很高兴。 OBS,这只是一个例子。但我仍然不明白为什么它不会工作..?
顺便说一句,抱歉我的英语不好。 ;)
祝你好运
答案 0 :(得分:3)
试试这个:
_showResults.Select(a => a.ToString()).ToArray()
答案 1 :(得分:0)
鉴于您的代码的性质(即字符串似乎直接映射到ShowResults
实例),您可能需要考虑实施implicit
运算符:
ShowResults s = "hello";
string ss = s;
Console.WriteLine(ss); // "hello"
class ShowResults
{
public string SomeProp
{
get; private set;
}
public static implicit operator ShowResults(string s)
{
//this is where you'd parse your string
//to form a valid ShowResults
return new ShowResults{SomeProp = s};
}
public static implicit operator string(ShowResults s)
{
return s.SomeProp;
}
}