如何将变量转换为字符串

本文关键字:字符串 转换 变量 | 更新日期: 2023-09-27 18:21:50

如何将变量转换为字符串?在我的Windowsphone应用程序页面中,我想将此var DemoHeader转换为字符串。


XDocument myData = XDocument.Load("aarti.xml");
var DemoHeader = from query in myData.Descendants("bookinfo")
                 select new HeaderT
                 {
                     Header = (string)query.Element("header")
                 };

ContentHeaderLine.Text = DemoHeader.ToString();‏ //LINE GIVING WRONG DATA
public class HeaderT
{
    string header;
    public string Header
    {
        get { return header; }
        set { header = value; }
    }    
}

如何将 var DemoHeader 转换为字符串?

如何将变量转换为字符串

首先,var本身不是一个类型,那么编译器将从该值推断出该类型。您的类型实际上是HeaderT,并且您的查询返回一个IEnumerable<HeaderT>(因此可能有多个(。

假设您想要第一个标头:

HeaderT first = DemoHeader.First();
string firstHeader = first.Header();

或者您希望所有返回的内容都用逗号分隔:

string allHeaders = String.Join(",", DemoHeader.Select(dh => dh.Header()));

如果您希望ToString返回有意义的内容(而不是类型的名称(,请覆盖它:

public class HeaderT
{
    private string header;
    public string Header
    {
        get { return header; }
        set { header = value; }
    }
    public override string ToString()
    {
        return Header;
    }
}

HeaderT 类中的 Override ToString(( 可能会有所帮助。之后,您的 DemoHeader 变量是 HeaderT 的列表,而不是单个 HeaderT。