2012-11-14 46 views
1

我的网站是用VB.NET和MVC 3.0(WebForms)编写的,但最近我们同意迁移到C#,因此任何新代码都尽可能使用C#编写。但是,我们有限的资源来完全迁移该网站,因此它仍然是VB.NET,包括主要的Web应用程序项目。在vb.net web应用程序中使用cshtml剃须刀视图

我真的想开始使用Razor视图,但是作为cshtml而不是vbhtml,因为我的感觉是这些将来很难迁移。但是,我无法在VB网站上看到这样做的方法。 Web App项目将不允许C#,编辑文件将是一场噩梦,因为Intellisense不起作用。

我可以毫不费力地做到这一点的唯一方法是将所有VB代码从Web项目中移出到单独的VB.NET类库中,然后创建一个新的仅包含视图文件的C#Web项目,将ASPX文件中的所有内联代码转换为C#。尽管如此,这仍然是一个很大的工作。

任何人都可以想到更快的方法吗?

回答

2

您可以尝试将新的Razor文件放入一个单独的项目中,然后使用RazorGenerator将它们编译为“查看库”dll,然后您可以从现有项目中引用它。

我对RazorGenerator并没有太多的好运,但我只用它来模板功能。你的用例听起来更像它的设计,所以你不应该有任何问题。

+0

有趣我没有想到这一点,谢谢。我认为它可能不适用于我的网站,因为它在运行时动态查找视图(它有一个主题引擎)。但它可能值得一看 –

+0

@JacobStamm - 谢谢。我更新了链接。 – Bobson

相关问题