发布网友 发布时间:2022-04-24 13:56
共5个回答
热心网友 时间:2023-10-15 08:46
方法/步骤
创建一个解决方案,添加3个类库项目,1个ASP.NET MVC4项目,如下图所示:
MainWeb项目时一个空的MVC项目,没有模型、控制器和视图,如下图所示:
解决方案中的其他两个项目是类库项目,与一般的类库不同的是,FirstArea和SecondArea需要依赖System.Web和ASP.NET MVC,前者在.NET框架程序集中引用,后者可以通过NuGet安装,如下图所示:
类库FirstArea和SecondArea项目中各自有一个控制器,都没有过多的代码。这两个项目代表两个不同的程序员开发的不同的后端服务,如下图代码所示:
FirstArea和SecondArea项目除了控制器以外,还各自都有一个用来注册区域的类,如下图所示:
最后,将FirstArea和SecondArea项目的生成路径全都改成生成到MainWeb的bin目录中。值得注意的是,MainWeb不需要引用FirstArea和SecondArea,只要这样生成到MainWeb的bin目录中,然后将MainWeb部署到IIS上,即可实现集中部署的效果。
我们还需要验证这样的集中部署是否有效,下面我们在MainWeb中开发前端页面。
首先,在MainWeb项目中添加FirstArea和SecondArea区域,注意,如果添加的区域有注册区域的类,是需要删掉的,因为这两个区域的注册类已经在另外两个项目中定义了,如下图所示:
建好区域之后,按照ASP.NET MVC的约定,在Views文件夹中新建与控制器一样名称的文件夹,再新建与Action名称一样的cshtml文件,如下图所示:
View的内容很简单,就是输出在action中赋值的ViewBag,如下图所示:
编译运行,页面显示如下:
11
通过注册区域的方式,不同的程序开发人员就能的开发后端的服务,然后把编译好的dll丢到网站的bin目录中,只要在网站中按约定建立好视图,这样后端即实现了服务,又能满足集中部署的需求。
热心网友 时间:2023-10-15 08:46
对外统一的走负载均衡,这样对外的端口和ip都是统一的。
负责均衡指向后端的 可以指向不同的 ip和不同不同的端口!
热心网友 时间:2023-10-15 08:47
可以考虑走网关转发、比如Nginx 二级目录反向代理,这样可解决统一ip和端口
可以的话,请采纳,谢谢
热心网友 时间:2023-10-15 08:47
建立转发机制一转多,根据不同的数据状态或者其它能区分的方式来进行数据转发就好。是啥就给谁。
热心网友 时间:2023-10-15 08:48
初步判断,应该使用反向代理。