Asp.net mvc 2 具有动态生成视图的asp.net mvc 2

Asp.net mvc 2 具有动态生成视图的asp.net mvc 2,asp.net-mvc-2,Asp.net Mvc 2,我正在尝试构建一个用于数据输入的asp.net mvc 2应用程序。我想在表单上动态生成视图,因此将使用htmlhelpers。数据源最灵活的选项是什么?所以当我更改数据库时,我根本不需要实际更改代码(所以我想EF不是一个选项)?因此,没有模型/控制器更改等。或者我别无选择,只能更改代码中的模型?好的,通过更改数据库,我假设您的意思是更改dbms,例如从sql server更改为oracle 我怀疑您是否能找到一个解决方案来做到这一点,而无需任何代码更改,但通过为所有服务使用接口,您可以使事情变

我正在尝试构建一个用于数据输入的asp.net mvc 2应用程序。我想在表单上动态生成视图,因此将使用htmlhelpers。数据源最灵活的选项是什么?所以当我更改数据库时,我根本不需要实际更改代码(所以我想EF不是一个选项)?因此,没有模型/控制器更改等。或者我别无选择,只能更改代码中的模型?

好的,通过更改数据库,我假设您的意思是更改dbms,例如从sql server更改为oracle

我怀疑您是否能找到一个解决方案来做到这一点,而无需任何代码更改,但通过为所有服务使用接口,您可以使事情变得简单得多

比如说

public interface IDataRepository
{
      ...
}
public class SqlServerDataRepository : IDataRepository
{
      ...
}
以及进行测试

public class MockRepository : IDataRepository
{
       ...
}
以后如果你切换数据库

public class OracleRepository : IDataRepository
{
       ...
}
然后可以通过引用接口简单地使用它

public class MyService
{
       public MyService(IRepository repo)
       {
             //ctor
       {
}
理想情况下,注入具有控制反转的对象,例如Ninject或structuremap


道歉,如果这是所有已经知道你和你寻找不同的东西

谢谢你的反馈,保罗!“更改数据库”指的是更改数据库的数据模型,例如向表中添加额外的列?您指的是使用LINQ to SQL对数据对象所做的更改吗?