如何在c#中将HtmlText转换为普通字符串
本文关键字:字符串 转换 HtmlText 中将 | 更新日期: 2023-09-27 17:58:35
我有以下模型:
namespace power.Storage.Models
{
public class Answer
{
public HtmlText[] Explanation { get; set; }
public string[] ImageFile { get; set; }
}
public class HtmlText {
[AllowHtml]
public string TextWithHtml { get; set; }
}
}
现在我想能够从答案中获取数据,并执行以下操作:
String[] _code_explanation = null;
_code_explanation =
(string) JSON.FromJSONString<Answer>(_code.AnswersJSON).Explanation;
但它不起作用。它说"无法将HtmlText转换为字符串
我有什么东西不见了吗?我想我所需要做的就是在JSON之前添加(字符串)。。。
以下是JSON 的代码
public static T FromJSONString<T>(this string obj)
{
using (var stream = new MemoryStream(Encoding.UTF8.GetBytes(obj)))
{
DataContractJsonSerializer ser = new DataContractJsonSerializer(typeof(T));
T ret = (T)ser.ReadObject(stream);
return ret;
}
}
下面的一半工作:
HtmlText[] _code_explanation = null;
_code_explanation =
(string) JSON.FromJSONString<Answer>(_code.AnswersJSON).Explanation;
它给了我一个HtmlText数组,但我不知道如何将其转换为一个简单的字符串数组。
HTMLText
没有显式或隐式的String
的强制转换运算符。
您可以使用HttpUtility.HtmlDecode
方法解码HtmlText。它不能直接转换为字符串。
我想你想做这样的事情,假设解释是HtmlText 类型
String[] _code_explanation = null;
_code_explanation =
JSON.FromJSONString<Answer (_code.AnswersJSON).Explanation.TextWithHtml;