我正处于一个项目的中间,我正在将一些网站的代码从WebForms迁移到MVC - 不幸的是,没有足够的时间一次完成所有这些,所以我将不得不做一些......不那么漂亮的解决方案。
我遇到了一个自定义控件的问题,我写的是继承自标准的GridView控件
namespace Controls {
public class MyGridView : GridView { ... }
}
我像往常一样添加到web.config文件中:
<configuration>
...
<system.web>
...
<pages>
...
<controls>
...
<add tagPrefix="Xui" namespace="Controls"/>
</controls>
</pages>
</system.web>
</configuration>
然后在MVC视图上:
<Xui:MyGridView ID="GridView1" runat="server" ...>...</Xui:MyGgridView>
但是我收到一个解析器错误,指出无法找到控件。我怀疑这与MVC和WebForms的混合有关,但我认为这样的混合应该是可能的,是否有任何类型的调整?我意识到这个解决方案远非理想,但是没有时间“做正确的事”。
谢谢
修改
我忘了补充一点,我已经尝试过使用它,结果相同。
另外,我不幸地需要在几个页面上使用它,所以将它添加到web.config将是理想的解决方案,但是如果有一个解决方案只适用于单个页面,那么这将是可接受的好。
答案 0 :(得分:0)
你不能使用&lt;%@ Register%&gt;指令直接在视图中?为什么在web.config中,如果它不会在整个应用程序中使用?我不确定它是否会起作用,因为我没有花太多时间在ASP.NET MVC上,但你可以试试。