Вернуть XML из действия контроллера в качестве ActionResult?

Отказ от ответственности: принятый ответ дает идею решения, но я нахожу его немного раздутым с ненужными правилами оболочки и CSS. Ниже представлено решение с очень небольшим количеством правил CSS.

blockquote>

HTML 5


    
Header with an arbitrary height
This container will grow so as to take the remaining height

CSS

body {
  display: flex;
  flex-direction: column;
  min-height: 100vh;       /* body takes whole viewport's height */
}

main {
  flex: 1;                 /* this will make the container take the free space */
}

Решение выше использует единицы просмотра и flexbox , и поэтому IE10 +, используя старый синтаксис для IE10.

Codepen для воспроизведения с: ссылкой to codepen

Или этот, для тех, кому нужен прокручиваемый основной контейнер в случае переполнения содержимого: ссылка на codepen

136
задан Svetlana Belkin 10 May 2012 в 11:32
поделиться

6 ответов

Используйте действие XmlResult MVCCONTRIB.

Поскольку ссылка здесь является их кодом:

public class XmlResult : ActionResult
{
    private object objectToSerialize;

    /// <summary>
    /// Initializes a new instance of the <see cref="XmlResult"/> class.
    /// </summary>
    /// <param name="objectToSerialize">The object to serialize to XML.</param>
    public XmlResult(object objectToSerialize)
    {
        this.objectToSerialize = objectToSerialize;
    }

    /// <summary>
    /// Gets the object to be serialized to XML.
    /// </summary>
    public object ObjectToSerialize
    {
        get { return this.objectToSerialize; }
    }

    /// <summary>
    /// Serialises the object that was passed into the constructor to XML and writes the corresponding XML to the result stream.
    /// </summary>
    /// <param name="context">The controller context for the current request.</param>
    public override void ExecuteResult(ControllerContext context)
    {
        if (this.objectToSerialize != null)
        {
            context.HttpContext.Response.Clear();
            var xs = new System.Xml.Serialization.XmlSerializer(this.objectToSerialize.GetType());
            context.HttpContext.Response.ContentType = "text/xml";
            xs.Serialize(context.HttpContext.Response.Output, this.objectToSerialize);
        }
    }
}
113
ответ дан 23 November 2019 в 23:38
поделиться

Если Вы уже установили Windows, я советую Вам устанавливать Ubuntu с помощью wubi, который включал в живой CD Ubuntu, открывают CD непосредственно с помощью Windows Explorer и выбирают wubi.exe But, если Вы хотите установить личинку, возможно, необходимо дать свободное пространство или раздел к формату в жестком диске для установки человечности сначала. В Вашем случае я думаю, что проблема находится на Вашем читателе CD или CD, таким образом, необходимо попробовать его еще раз.

0
ответ дан Johan Nathaniel Soedjono 22 October 2019 в 14:41
поделиться

Если у Вас есть проблемы со стандартным CD, просто используйте альтернативный CD.

1
ответ дан jPlatte 22 October 2019 в 14:41
поделиться

Попытайтесь делать от Живого USB.

Используя Карту памяти?

Большинство более новых компьютеров может загрузиться от USB. Необходимо видеть, что экран приветствия предлагает Вам выбирать свой язык и давать Вам опцию установить Ubuntu или попробовать его с CD.

, Если Ваш компьютер doesn’t автоматически делает так, Вы, возможно, должны были бы нажать клавишу F12, чтобы поднять меню начальной загрузки, но бояться удерживать его - который может вызвать сообщение об ошибке.

От: http://www.ubuntu.com/download/help/install-ubuntu-desktop

можно использовать Unetbootin или Pendrive для этого.

Установка Unetbootin очень легок. Можно загрузить 4 МБ unetbootin.exe и дать ему разрешение выполниться как программа и затем сделать ярлык на него. Никакая необходимая дальнейшая работа. Следующая вещь, которую можно сделать, состоит в том, чтобы установить Ubuntu в карте флэш-памяти с интерфейсом USB. Вы, возможно, должны были бы изменить настройки BIOS для начальной загрузки от USB.

От @Curious Ученика, , Как может, я устанавливаю Ubuntu если мой компьютер doesn' t загружаются с CD?

Pendrive: , Как Установить Ubuntu 12.04 с Pendrivelinux?

0
ответ дан Community 22 October 2019 в 14:41
поделиться

Существует XmlResult (и намного больше) в MVC Contrib. Смотрите на http://www.codeplex.com/MVCContrib

17
ответ дан 23 November 2019 в 23:38
поделиться

Если вас интересует только возврат xml через запрос, и у вас есть «кусок» xml, вы можете просто выполнить (как действие в вашем контроллере):

public string Xml()
{
    Response.ContentType = "text/xml";
    return yourXmlChunk;
}
24
ответ дан 23 November 2019 в 23:38
поделиться
Другие вопросы по тегам:

Похожие вопросы: