我遇到了典型的虚拟目录困境,因为您在ASP.Net应用程序上有一些路径,并且您将应用程序部署在IIS虚拟目录中.然后所有与"web根"(fi,"/ images")相关的路径都不起作用,因为应用程序位于虚拟目录路径中.
A.将"images"文件夹设为虚拟目录.这样"/ images"将永远存在.
B.用"<%=Request.ApplicationPath%>/Imagenes"我的图片的来源.这在IIS中很有用,但我无法在设计时和调试时看到它.
此解决方案还包括以下说明:
C.使用当前控件/页面的亲戚路径.这确切地知道images文件夹相对于我当前文件的位置(没有转到root.所以我会使用像"","../","../../"之类的东西等等.
说.我不喜欢这些解决方案.我想在web.config文件或IIS中找到解决方案.我在web.config文件中写了一些内容,告诉IIS我的应用程序实际驻留在哪里(虚拟目录).
有什么建议?
我使用单词widget作为具有自己的控制器的部分视图(所以它自己的动作),它几乎放在所有页面中.我通过HMVC实现了这个渲染,这很棒.
现在,问题是小部件本身执行操作.想想购物车小部件.该小部件放置在所有页面中,因此用户可以一直看到他/她的东西.并且窗口小部件具有与其相关的操作,例如:RemoveItem,RefreshCart,ApplyDiscountCoupon等.此类操作应该由按钮或链接触发,并且链接应该类似于(在HMVC中):
<a href='<?site_url()?>/cart/cart/removeitem/the_item_id'>Remove this item</a>
Run Code Online (Sandbox Code Playgroud)
好.现在,用户单击该链接,已加载购物车模块和购物车控制器并执行操作,操作应如下所示:
function removeitem($itemid)
{
// remove the item from db
...
// "load the view" ???
}
Run Code Online (Sandbox Code Playgroud)
如您所见,我的问题是如何在HMVC模块中加载视图.问题是,如果我只加载购物车视图,它只会显示我的购物车,我不能只重定向或加载主页面,因为它可以是任何主页面,即:购物车可以在任何主页面(选择产品,继续购买,查看产品详细信息,结算信息,结帐等).:/
另一件事:要求是我不能在这个项目中使用AJAX.
你知道HMVC怎么处理这个吗?
提前致谢.