编程语言
首页 > 编程语言> > C#ASP.NET TempData正在运行,但现在它不是3台计算机中的2台

C#ASP.NET TempData正在运行,但现在它不是3台计算机中的2台

作者:互联网

我正在开发一个在VS社区2017中使用的.net Core MVVC项目,并使用IIS Express 10,我遇到TempData的问题,而不是我开发的3台计算机中的两台.有一次,它确实对所有三个都有效.

我使用TempData在重定向期间存储信息,然后将TempData传输到ViewData以显示在View页面上.我遇到了一些问题(我不记得它现在是什么)并得到了同事的帮助,在他的故障排除过程中弹出一个框,说了一些关于SSL的内容,我不记得他点击了什么,但从那以后TempData停止工作.我认为他做的一件事与我不同的是在Debug区域的顶部,他点击了IIS Express下拉列表并选择了项目名称选项. TempData现在在重定向后显示为null.当我在家用计算机上打开项目时,TempData可以正常工作.我有一台第三台计算机,我做了一些开发,它曾经用过,直到SSL盒子弹出,然后停止工作.我猜它正在重定向到我想要的页面,但是它正在沿途的某个地方停留,数据丢失了.

我尝试卸载并重新安装VS和IIS Express,没有任何更改.我也尝试删除解决方案中的.vs文件夹而不做任何更改.我尝试在命令提示符中使用IIS Express命令清除网站.我也在Chrome(它曾经工作过的地方)和Internet Explorer中尝试过,没有任何变化.我已经尝试使用调试运行它,没有调试,没有任何变化.

因此,TempData不再适用于两台计算机(如果重要的话,都是Windows 10)和我的家用计算机(Windows 7)工作正常.有人有主意吗?

解决方法:

一开始仔细查看你的问题

“a co-worker and during his troubleshooting a box popped up and said
something about SSL and I don’t remember what he clicked”

mybe你的同事在开发环境中启用了ssl,在运行项目后你必须信任本地IIS证书.

我认为您必须为使用SSL配置cookie,例如< httpCookies requireSSL =“true”/>或者你可以禁用SSL进行开发,每件事都可以.

您肯定可以在家用计算机上检查您的URL是否有HTTP,而在其他两台计算机中,URL以HTTPS开头.

另一方面,我建议你比较web.config结构.

标签:c,asp-net,iis-express,tempdata
来源: https://codeday.me/bug/20190701/1346214.html