想用 c#的 mvc 实现一个功能.

35 天前
 wangybsyuct

事情是这样的,服务器比较老 windows server2003 ,上面运行的 php 版本有漏洞,但是 php 无法升级,操作系统更换也非常困难。 想使用 c#的 MVC 实现里面的 php 程序的功能,服务器是提供接口,接口形式不能变。 接口类似于 http://webserver.com/abc/def.php?code=abc123321 我想用 c#的 MVC 实现这个接口,请教大家 mvc 的程序和配置该如何实现? mvc 的程序一些,配置不是很熟。 感谢感谢

1576 次点击
所在节点    C#
24 条回复
klo424
35 天前
外包吗?可以联系我
StoneHuLu
35 天前
.net 的 api 和 mvc 框架都是开箱即用的,有啥需要配置的。。
gbw1992
35 天前
你是想自己开发?
这个是 webapi 文档 https://dotnet.microsoft.com/zh-cn/apps/aspnet/apis ,配合 vs 随便看两眼基本就会
系统太旧直接 aot ,在哪都能跑
gbw1992
35 天前
wangybsyuct
35 天前
在 abcController 里无法定义 ActionResult def.php(),这么写是无法通过编译。https://imgur.com/a/ZoIfFQ3
wangybsyuct
35 天前
@gbw1992 好像不行,操作系统太老了
jifengg
35 天前
[HttpGet("def.php")]
ActionResult xxxx(参数)
wangybsyuct
35 天前
@StoneHuLu 在 c#mvc 程序里定义 ActionResult def.php(),来模拟以前的 php 访问请求,这么定义是错误的,我不知道该如何弄,才能完全模拟出这个请求。
wangybsyuct
35 天前
@jifengg [HttpGet("def.php")]这样写,提示错误,错误是《“System.Web.Mvc.HttpGetAttribute”不包含采用“1”个参数的构造函数》,可能是 mvc 的版本比较低,操作系统比较老,这个版本几乎 c#能用的最高版本了,我改为[HttpGet] [Route("def.php")]也不行,提示 Route 缺少 using 指令或程序集引用。
jifengg
35 天前
@wangybsyuct 你按你使用的版本,搜索相关的“自定义路由”“自定义 path”等关键词去找吧。这种小问题总会有解决办法的
gbw1992
35 天前
@wangybsyuct #5 这家伙,第一次写代码么? 建议先读读文档再动手。
lzzy1994
35 天前
lzzy1994
35 天前
ahswch
35 天前
第一步:.net4.6 配置路由(我这边路径是 项目目录/App_Start/RouteConfig.cs)
routes.MapHttpHandlerRoute("v2exTest", "abc/def.php", "~/t/testHandler.ashx");
第二步:新建一般处理程序 路径:/t/testHandler.ashx
第三步:一般处理程序接受 code 参数
public void ProcessRequest(HttpContext context)
{
var code = context.Request["code"];
context.Response.ContentType = "text/plain";
context.Response.Write(code);
}
第四步:测试 项目部署到服务器后访问 /abc/def.php?code=abc123321 返回 abc123321
注意:这种路由配置后,本地调试访问会 404 ,部署到服务器正常,建议在服务器使用 vs 调试代码
ahswch
35 天前
@ahswch 另外 你发的 controler 里配置的路由是和 Views 文件夹下的页面一一对应的,一般用来设置页面 title 或者做 seo 关键词设置
skydcnmana
35 天前
改 mvc 的路由配置是可以的,实在不行你就 url 转发
ddup
35 天前
自定义一下路由就行了,2003 系统你可以搜一下 .net framework 4 mvc 的路由配置。
wellerman
35 天前
用 requestRouter_x86.msi rewrite_x86_zh-CN.msi 这两个工具, 新 API 随便用什么写。
quan01994
34 天前
a33291
34 天前
这么老的系统大概率用 netcore 会有问题,我们部署的最低系统也是 server 2008

用以前的 netframework 应该是可以的,关于写法问题先读文档

此外,除了自带的 mvc,这种 api 的话还有一个叫 Nancy 的很不错,试试看

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1091681

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX