Визуализация MVC PartialView в ответе SignalR

Я хотел бы отобразить PartialView в HTML-строку, чтобы я мог вернуть его в ajax-запрос SignalR.

Что-то вроде:

SignalR Hub (mySignalHub.cs)

public class mySignalRHub: Hub
{
    public string getTableHTML()
    {
        return PartialView("_MyTablePartialView", GetDataItems()) // *How is it possible to do this*
    }
}

Razor PartialView (_MyTablePartialView.cshtml)

@model IEnumerable<DataItem>

<table>
    <tbody>
        @foreach (var dataItem in Model)
        {
        <tr>
            <td>@dataItem.Value1</td>
            <td>@dataItem.Value2</td>
        </tr>
        }
    </tbody>
</table>

HTML (MySignalRWebPage.html)

<Script>
    ...      
    //Get HTML from SignalR function call
    var tableHtml = $.connection.mySignalRHub.getTableHTML();

    //Inject into div
    $('#tableContainer).html(tableHtml);
</Script>

<div id="tableContainer"></div>

Моя проблема в том, что я не могу визуализировать PartialView вне контроллера. Можно ли даже визуализировать PartialView вне контроллера? Было бы очень неплохо по-прежнему иметь возможность использовать потрясающие возможности генерации HTML, которые поставляются с Razor.

Я все об этом ошибаюсь? Есть ли другой способ?

Ответы на вопрос(6)

Ваш ответ на вопрос