这很奇怪。 MVC视图拒绝识别System.Speech命名空间。这是怎么回事?有没有解决这个问题?我有一个ViewModel,它具有来自此命名空间的VoiceAge和VoiceGender枚举属性,但MVC视图不是在播放球。
摄制
在Controller中没问题:
using System.Speech.Synthesis;
using System.Web.Mvc;
namespace MvcApplication6.Controllers
{
public class HomeController : Controller
{
public ActionResult Index()
{
VoiceAge voiceAge = VoiceAge.Adult;
return View();
}
}
}
观点,而不是:
我甚至在web.config中添加了名称空间,没有运气:
<pages>
<namespaces>
<add namespace="System.Speech.Synthesis" />
答案 0 :(得分:1)
确保您的web.config的System.Speech
部分中存在<assemblies>
程序集:
<assemblies>
<add assembly="System.Web.Abstractions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Helpers, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Routing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.Mvc, Version=3.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Web.WebPages, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
<add assembly="System.Speech, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35" />
</assemblies>
添加后,请确保重新编译,关闭并重新打开.aspx视图,然后通常它应该可以正常工作。