我在ASP.NET MVC2中创建一个动态CSS文件,现在我遇到了一个异常。一切都工作正常,但突然间我得到2个变量的错误消息:
以下方法或属性之间的调用不明确:'System.IO.TextWriter.Write(string,params object [])'和'System.IO.TextWriter.Write(char [])'
代码的一个例子是:
#pageMaster .CCResultsText2 {
font-size: <%= ViewData.Model.FontSize %>;
color: <%= ViewData.Model.FontColor %>;
}
当我替换&lt;%= ViewData.Model.FontColor%&gt;时,此错误得到解决。与&lt;%Response.Write(ViewData.Model.FontColor); %GT;
似乎在某种程度上存在区分System.IO.TextWriter.Write方法的两种不同形式的问题,但我不确定除了写出Response.Write方法之外还能做些什么。
答案 0 :(得分:15)
尝试将模型成员转换为特定类型,如:
#pageMaster .CCResultsText2 {
font-size: <%= (int)ViewData.Model.FontSize %>;
color: <%= (string)ViewData.Model.FontColor %>;
}
这些类型只是我的猜测..将它投射到适当的类型当然;)
答案 1 :(得分:1)
我的问题是视图中的值是在基类中设置的,我忘了让新控制器从基本控制器继承。
ViewBag返回的结果空值产生了歧义。
按照其他答案中的描述添加类型转换将使错误消失,但它无法解决控制器中未正确设置值的基本问题。