如何为不同版本的mvc Web应用程序创建不同的初创公司

时间:2018-03-30 12:45:44

标签: c# asp.net-mvc mocking

为了测试,我需要构建一个略微不同版本的MVC服务。

这个想法是在启动时模拟某些服务,例如身份验证,而不向主版本添加代码。 为了防止部署任何测试代码,所有测试代码都位于文件中,并且无法使用编译指令将其编译为主版本。

因此,为了保持所有事物的分离,我需要一种方法来挂钩启动,而无需在MVC的标准启动类中实际编写代码。 它怎么能这样做,但保持我的主版本代码干净?

正如一个简单的例子,我想做什么:

#if MOCK //code only included into mock build type

namespace MyService.MockBuild
{
    public class ServiceFactoryMock : ServiceFactory
    {
        //prepare mocked versions of the services
        ...
    }

    public class MockService
    {
        //this is what needs to be done at startup, from here
        public static void MockTheServer()
        {
            global.serviceFactory = new ServiceFactoryMock();        
        }
    }
}
#endif 

1 个答案:

答案 0 :(得分:0)

一种方法是注册PreApplicationStartMethod

var capitalizeTest = capitalizeFirstLetter(splitUp[splitUp.length - 1]);

对我来说这是一种可以接受的方式,有更多完整的方法可以按照建议here自定义asp.net构建。