Приложение Azure работает на эмуляторе, но не на облаке Azure - PullRequest
1 голос
/ 11 января 2011

Я занимаюсь разработкой приложения MVC3 для Visual Web Developer 2010 Express, путем миграции моих файлов MVC3 (cshtml) на MVC2.

Он отлично работает в локальной системе с использованием эмулятора, но после развертывания приложения в Azure это приводит к ошибкам времени выполнения.

Пример:

The layout page "~/Views/Shared/test_page.cshtml" could not be found at the following path: "~/Views/Shared/test_page.cshtml". 

Source Error: 


Line 8:          //Layout = "~/Views/Shared/upload.cshtml";
Line 9:          //Layout = "~/Views/Shared/_Layout2.cshtml";
Line 10:         Layout = "~/Views/Shared/test_page.cshtml";
Line 11:     }
Line 12:     else

КОД, КАК СЛЕДУЮЩИЙ:

_ViewStart.cshtml file

@{

    string AccId = Request.QueryString["AccId"].ToString();


    if (AccId=="0")
    {
        //Layout = "~/Views/Shared/upload.cshtml";
        //Layout = "~/Views/Shared/_Layout2.cshtml";
        Layout = "~/Views/Shared/test_page.cshtml";
    }
    else
    {
        string LayOutPagePath = MVCTest.Models.ComponentClass.GetLayOutPagePath(AccId);
        Layout = LayOutPagePath; 
    }



}

.........

однако страница существует и нормально работает на эмуляторе Azure, но не в облаке Azure.

КОД ДЛЯ test_page.cshtml

@{

    var result = "1234567890";
    var temp_xml = MVCTest.Models.ComponentClass.GetTemplateAndTheme("1");//returning xml
    string LayOutPagePath = MVCTest.Models.ComponentClass.GetLayOutPagePath("1");//returning string

 }

 @RenderBody()
 <h1>test_page</h1>
 <h4>@temp_xml</h4>
 <h4>@result</h4>
 <h4>@LayOutPagePath</h4>

1 Ответ

1 голос
/ 11 января 2011

я нашел свое решение здесь .. когда я создаю cshtml файлы на MVC2, я вручную изменяю расширение с aspx на cshtml. а остальное вы поймете по ссылке ниже.

http://blog.andreloker.de/post/2010/07/02/Visual-Studio-default-build-action-for-non-default-file-types.aspx

...