Как отобразить вывод хранимых процедур в таблице html?

Я хочу отобразить вывод хранимой процедуры в таблице HTML. Я знаю, как отображать в gridview, но я не знаю, что показывать в таблице HTML. Кто-нибудь может предложить мне или предоставить мне образец кода, чтобы я мог учиться на нем. Я искал и пытался решить проблему. Я хочу создать графики из созданной таблицы HTML.

0
nl ja de
вы используете asp.net mvc? ado.net? дайте нам подробнее о том, что вы пробовали!
добавлено автор Felipe Oriani, источник
Хорошо, но вы что-то пробовали? отправьте код, если вы это сделали!
добавлено автор Felipe Oriani, источник
Не за что!!! этот вопрос и мой вопрос об этом совершенно другой. Я создал свои собственные хранимые процедуры, которые выполняют операции, такие как отображение данных на основе разных критериев. Я отобразил вывод хранимой процедуры в GridView в asp.net, но теперь я хочу, чтобы вывод хранимой процедуры отображался в таблице HTML. И я хочу, чтобы таблица HTML создавалась динамически на основе вывода хранимой процедуры.
добавлено автор IT_INFOhUb, источник
@Felipe Oriani, я использую asp.net MVC3 и SQL Server 2008.
добавлено автор IT_INFOhUb, источник
@FelipeOriani См., Я отобразил вывод хранимой процедуры в виде сетки. Но теперь я хочу попытаться отобразить вывод хранимой процедуры в таблице html. Поэтому я понятия не имею об этом. Поэтому я опубликовал этот вопрос. Если у вас есть какая-либо идея или образец кода, любезно предоставите мне.
добавлено автор IT_INFOhUb, источник
Это похоже на повторение stackoverflow.com/questions/9365881/…
добавлено автор Rupesh Saini, источник

2 ответы

Прежде всего, вам нужно создать ViewModel, чтобы показать, какую информацию вы хотите перечислить в представлении. Что-то вроде этого:

public class ProductViewModel 
{
    public int Id { get; set; }
    public string Name { get; set; }
    public decimal Price { get; set; }
    /* other properties you need */
}

В вашем контроллере вы можете получить доступ к базе данных и создать список и вернуть его в представление, отображаемое в выходном файле html. Я мог бы рекомендовать вам создать слой доступа к данным вместо использования Ado.Net непосредственно в контроллере.

public ActionResult Index()
{
    var model = new List();

   //create a connection
    SqlConnection con = new SqlConnection("your_connection_string");    
    try 
    {
       //open the conneciton
        con.Open();

       //prepare a command
        SqlCommand command = new SqlCommand("You_Stored_Procedure_Name",con);   
        command.CommandType = CommandType.StoredProcedure;

       //add parameters if you need
       //command.Parameters.AddWithValue("ParameterName", value);

       //execute a reader with the command
        using (var reader = command.ExecuteReader())
        {
           //loop in the result and fill the list
            while (reader.Read())
            {
               //add items in the list
                model.Add(new ProductViewModel() 
                        {
                            Id = (int)reader["Id"],
                            Name = reader["Name"].ToString(),
                            Price = (decimal)reader["Price"]
                           //other properties
                        });
            }
        }       
    }
    catch 
    {
    }
    finally 
    {   
        con.Close();
    }

    return View(model);
}

in your View, you could type it with the IEnumrable and list it in a html table, or any html structure you need, something like this:

@model IEnumerable

<table>
    <tr>
        <th>Name</th>
        <th>Price</th>      
    </tr>
    @foreach(var item in Model)
    {
        <tr>
            <td>@item.Name</td>
            <td>@item.Price.ToString("C2")</td>
        </tr>
    }
</table>
1
добавлено
Спасибо большое. Я собираюсь попробовать это. :)
добавлено автор IT_INFOhUb, источник

я думаю ... вы можете вызвать SP и получить данные на своей странице .CS ...

теперь вам нужно сделать одно. Храните этот Datareader в любом списке. И примените запрос linq, чтобы вы могли получить запись в соответствии с вашим требованием. Сохраните эту запись по отдельной переменной.

см. Пример:

 MainHTML = MainHTML + "<div class=" + "HideDivClass" + " id=" + TMid + "><table width=" + "180" + " cellspacing=" + "1" + " cellpadding=" + "2" + " align=" + "left" + "><tbody><tr><td style=" + "text-align:center;font-size:13px" + "align=" + "center" + " colspan=" + "2" + ">" + TransModeName + "</td></tr><tr><td class=" + "DetailsFontSize" + ">Last 7 days</td><td  class=" + "DetailsFontSize" + " " + "align=" + "right" + ">$" + TotalSumActualCharge7Days + "</td></tr><tr></tr><tr><td class=" + "DetailsFontSize" + ">Last 30 days</td><td class=" + "DetailsFontSize" + " " + "align=" + "right" + ">$" + TotalSumActualCharge30Days + "</td></tr><tr><td class=" + "DetailsFontSize" + ">This Year</td><td class=" + "DetailsFontSize" + " " + "align=" + "right" + ">$" + TotalSumActualChargeThisYear + "</td></tr><tr><td class=" + "DetailsFontSize" + ">Total</td><td class=" + "DetailsFontSize" + " " + "align=" + "right" + ">$" + TotalSumActualChargeTotal + "</td></tr><tr><td class=" + "DetailsFontSize" + ">Avg/Shipment</td><td class=" + "DetailsFontSize" + " " + "align=" + "right" + ">$" + AvgShip.ToString("#.####") + "</td></tr><tr><td class=" + "DetailsFontSize" + "align=" + "center" + " colspan=" + "2" + "></td></tr></tbody></table></div>";

здесь я взял MainHTML как строку ... и создал строку (формат HTML/формат) и привязал эту строку к метке.

как. label.text = MainHTML.tostring (); вы можете настроить дизайн в соответствии с вашими вещами ...

0
добавлено
Ohk Я попробую это. Спасибо большое. Есть ли у вас образец кода. Я новичок в этом, поэтому я спросил.
добавлено автор IT_INFOhUb, источник
DotNetRuChat
DotNetRuChat
2 992 участник(ов)

Чат русскоязычного .NET сообщества http://dotnet.ru/ Вам могут быть интересны: @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @xamarin_russia, @microsoftstackjobs, @uwp_ru Флуд в @dotnettalks

Microsoft Stack Jobs
Microsoft Stack Jobs
1 788 участник(ов)

Work & freelance only Microsoft Stack. Feed https://t.me/Microsoftstackjobsfeed Чат про F#: @Fsharp_chat Чат про C#: @CSharpChat Чат про Xamarin: @xamarin_russia Чат общения:@dotnettalks

SqlCom.ru - Стиль жизни SQL
SqlCom.ru - Стиль жизни SQL
908 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только MS SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz). Предложения в @sql_ninja

pro.net
pro.net
710 участник(ов)

Обсуждение .NET Framework и всего, что с ним связано. Правила: не флудить не по теме, уважать ваших коллег и никакой рекламы (объявления о вакансиях можно согласовать с @AlexFails). Флудилка: @dotnettalks Участник @proDOT

Microsoft Developer Community Chat
Microsoft Developer Community Chat
584 участник(ов)

Чат для разработчиков и системных администраторов Microsoft Developer Community. __________ Новостной канал: @msdevru __________ Баним за: оскорбления, мат, рекламу, флуд, флейм, спам, NSFW контент, а также большое количество оффтоп тем. @banofbot

.NET Talks: Force Push Masters
.NET Talks: Force Push Masters
490 участник(ов)

Свободный чат .NET разработчиков. Правила: t.me/dotnettalks/56823 Вам могут быть интересны: @dotnetruchat, @dotnetchat, @cilchat, @fsharp_chat, @pro_net, @dotnetgroup, @xamarin_russia, @microsoftstackjobs, @uwp_ru http://combot.org/chat/-1001128250813

SQL_Ninja
SQL_Ninja
340 участник(ов)

Правила чата - https://t.me/sqlcom/88269 @sqlcom - основной канал (только SQL) @sql_ninja - второй канал (SQL вопросы начального уровня и свободное общение) @Gopnegbot - Викторина по SQL Server (наберите в привате /quiz)

.NET Chat Убежище
.NET Chat Убежище
246 участник(ов)

Чат .NET разработчиков под эгидой MSK/SPB .NET Community Group Вам могут быть интересны: @fsharp_chat, @dotnetruchat, @cilchat, @xamarin_russia, @microsoftstackjobs, @dotnetgroup Флуд в @dotnettalks

.NET CIL Chat
.NET CIL Chat
54 участник(ов)

.NET CIL (aka IL aka MSIL)