Проблемы с конфигурационным файлом Flash XML с asp.net MVC - PullRequest
1 голос
/ 12 июля 2009

Я создаю приложение asp.net MVC, впервые я сделал это. У меня есть флэш-компонент, который мне нужно использовать в представлении. Я включил SWF-файлы и т. Д. В папку «Содержимое» и сослался на нее из своего представления, флэш-файл загружается, когда вы переходите в представление, отлично.

Проблема возникает из-за того, что флэш-файл ссылается на XML-файл для его данных конфигурации, и я получаю сообщение об ошибке при доступе к этому XML-файлу. Я предполагаю, что это потому, что flash ищет относительный путь и использует URL-адрес страницы, который, очевидно, является URL-адресом MVC и поэтому не ссылается на фактическое местоположение на диске, поэтому файла XML там нет.

Полагаю, очевидным ответом является изменение файла флэш-памяти для поиска в папке содержимого файла XML, но это означает перекомпиляцию флэш-памяти, и я очень мало знаю о флэш-памяти, поэтому я хотел бы избежать этого , Таким образом, есть ли способ заставить файл XML отображаться в том же URL-адресе, что и представление, поэтому на данный момент страница с включенным компонентом flash находится по адресу htttp: // localhost / upload /, поэтому я предполагаю, что файл XML должен быть доступен с http://localhost/upload/flash-settings.xml?

Если есть какой-то другой лучший способ сделать это, не редактируя флэш-файл, я тоже открыт для этого,

Ответы [ 2 ]

2 голосов
/ 13 июля 2009

Добавьте это действие в контроллер FlashUpload:

public class FlashUploadController : Controller
{
    [AcceptVerbs(HttpVerbs.Get)]
    public ActionResult FlashSettings()
    {
        var fileName = Server.MapPath("~/Contents/flash-settings.xml");

        return new FilePathResult(fileName, "text/xml");
    }
}

И этот маршрут к RouteTable:

routes.MapRoute("FlashSettings", "upload/flash-settings.xml",
    new { Controller = "FlashUpload", Action = "FlashSettings" });
1 голос
/ 12 июля 2009

Вам нужно будет либо настроить механизм маршрутизации, чтобы разрешить прямой доступ к файлам в папку / upload /, либо создать действие контроллера, которое будет возвращать поток XML (динамический или тот, который читается из физического файла XML), и укажите свой SWF на этот маршрут. Я бы выбрал второй вариант, так как он очень гибкий.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...