簡體   English   中英

使用鏈接的相對路徑而不是視圖語法的MVC網站

[英]MVC site using relative paths for links instead of view syntax

編輯!! 我應該補充一點,該站點可以在本地完美運行。 只有在部署時才會出現此問題

原始帖子:

我有一個站點,我只是張貼了http://splattonet0.web704.discountasp.net/

加載Home控制器的Index視圖就好了。 但是,當單擊左側鏈接時,Web服務器正在尋找相對路徑(即E:\\ web \\ splattonet0 \\ htdocs \\ Home \\ AboutMe),這是不正確的,因為Home文件夾當然位於名為“ Views”的文件夾下”

我以前做過MVC網站,從來沒有遇到過這個問題。 我看不到此網站或我完成的任何其他網站之間的任何區別。

我的主模板中鏈接部分的代碼如下:

<div id="navContainer">
            <ul id="mainNav">
                <li><a href="/Home/Index" title="Home">Home</a></li>
                <li><a href="/Home/AboutMe" title="About Us">About Me</a></li>
                <li><a href="/Skills/Index" title="Skills">Skills</a></li>
                <li><a href="/Home/Resume" title="Resume">Resume</a></li>
                <li><a href="/Home/Experience" title="Experience">Experience</a></li>
                <li><a href="/Home/SitesIveDesigned" title="Websites I've developed">My Websites</a></li>
                <li><a href="/Home/References" title="References">References</a></li>
                <li><a href="/Home/Projects" title="Projects">Projects</a></li>
                <li><a href="/Home/Hobbies" title="Hobbies">Hobbies</a></li>
                ....etc
            </ul>
        </div>

無論在href屬性中是否包含前面的斜杠,我都有相同的問題。 我決定將其保留在那兒,因為這是我其他網站(工作方式)的樣式。

誰能為我闡明一下? 謝謝!

進一步編輯:

我被要求從我編寫的該服務器上的MVC站點提供代碼,並且效果很好。 另一個站點( YorkCentre )中的鏈接代碼是相同的樣式: <li><a href="/Controller/Action">text</a></li>

編碼:

<li><a href="/News/Index">Archived News</a></li>
<li><a href="/Home/BoardOfDirectors">Board Of Directors</a></li>
<li><a href="/Media/Index">In The Media</a>
...
</ul>

假設您使用的是默認路由,則/ Home / Index應該調用“ Home”控制器的“ Index”操作。 對於MVC,“主頁”位於“視圖”文件夾下的事實無關緊要。

如果兩個地方的代碼都相同,而問題只在一個地方發生,則答案可能不在代碼內。 以下是一些疑難解答提示,它們可能會有所幫助,因為如果沒有有關這兩種環境的更多信息,我將不知道到底是什么問題。

您的本地環境和服務器環境有哪些Web服務器平台? 您是在本地使用Visual Studio和Cassini,還是在遠程使用IIS? 如果是這樣,哪個版本的IIS? 如果沒有,平台是什么? 無論如何,目標服務器是否配置正確?

檢查以確保在目標服務器上正確設置了路由。 如果目標服務器運行IIS6-IIRC,則尤其如此,IIS 6需要一些特殊的配置幫助來處理ASP.NET MVC中的標准路由。

如果上述所有方法都無法幫助您找到答案,請嘗試通過創建新的MVC站點並將現有文件拖放到本地來在本地復制它。 看看是成功還是失敗。

您在該服務器上還有其他成功執行的ASP.NET MVC應用程序嗎? 根據您的新站點檢查其配置。

我已經解決了問題! 在DiscountASP中,我已將“應用程序池管道模式”從“經典”更改為“集成”,從而導致正確呈現了我的視圖。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM