打赏

.net core 3.1 5.1请求重写

1.调用一般处理程序改写为调用控制器方式:

Startup.cs

public void Configure(IApplicationBuilder app, IWebHostEnvironment env)
{var rewrite = new RewriteOptions()
.AddRewrite("******.ashx", "控制器Name/MethodName", skipRemainingRules: true);
app.UseRewriter(rewrite);

目的:兼容旧程序的调用,不需要改旧程序

场景:一般处理程序要合并到webapi项目,又不想改旧的程序的调用(程序太多没法改),只能让被调用方做兼容啦!!

2.调用wcf改为调用控制器方式:

Startup.cs

        app.UseServiceModel(builder =>
            {
                void ConfigureSoapService<TService, TContract>(string svcName) where TService : class
                {
                    var url = $"{ServiceAddress}/{svcName}.svc";
                    builder.AddService<TService>().AddServiceEndpoint<TService, TContract>(new BasicHttpBinding(), url);
                }

                ConfigureSoapService<WCF服务类, IWCF服务类接口>(".svc文件名称"); });

目的:兼容旧程序调用wcf服务,不需要改旧程序

场景:wcf服务要合并到webapi项目,又不想改旧的程序的调用(程序太多没法改),只能让被调用方做兼容啦!!

posted @ 2022-01-17 18:08  刘奇云  阅读(166)  评论(0编辑  收藏  举报