2016-07-30 165 views
1
ALTER PROCEDURE [Deal].[USP_LoadDealHistoryByDealId] 
    (@DealId int, 
    @chk int) 
AS 
    IF (@chk = 1) 
    BEGIN 
     SELECT 
      DDT.FieldType AS field, 
      DDT.OldValue as old, 
      DDT.NewValue as new, 
      AU.FullName AS Name, 
      DDT.UpdateOn AS UpdatedOn 
     FROM 
      [Deal].[DealTransaction] as DDT 
     INNER JOIN 
      AD.Users as AU ON AU.UserId = DDT.[UpdateBy] 
     WHERE 
      DDT.dealId = @DealId 
    END 
    ELSE if(@chk = 2) 
    BEGIN 
     SELECT 
      'No Data' as field , 
      0 as old , 
      0 as new , 
      AU.FullName AS Name, 
      DD.UpdatedOn AS UpdatedOn 
     FROM 
      AD.Users as AU 
     INNER JOIN 
      [Deal].[Deals] AS DD ON AU.UserId = DD.UploadedBy 
     WHERE 
      DD.dealId = @DealId 
    END 

UpdatedOn列數據類型datetime的,它顯示了像10-09-1992/12.00我的HTML表格....但是我想告訴喜歡10-09-1992只是日期,我該怎麼辦?將日期時間更改爲日期數據類型?

這裏是我的HTML表格

public string LoadDealHistory(DealHistory aDealhistory) 
{ 
     StringBuilder html = new StringBuilder(); 

     try { 
      using (DealTranctionGateway dealTranctionGateway = new DealTranctionGateway()) 
      { 
       DataTable dt = new DataTable(); 
       dt = dealTranctionGateway.LoadDealHistory(aDealhistory); 

       string dealHistory = ""; 

       if (dt.Rows.Count > 0) 
       { 
        html.Append("<table class='table table-bordered'>"); 
        html.Append("<thead>"); 
        html.Append("<tr>"); 
        html.Append("<th>S.No</th>"); 
        html.Append("<th>FieldType</th>"); 
        html.Append("<th>OldValue</th>"); 
        html.Append("<th>NewValue</th>"); 
        html.Append("<th>Full Name</th>"); 
        html.Append("<th>UpdateOn</th>"); 
        html.Append("</thead>"); 
        html.Append("</tr>"); 

        for (int i = 0; i < dt.Rows.Count; i = i + 1) 
        { 
         int sNo = i + 1; 
         html.Append("<tr>"); 
         html.Append("<td>" + sNo + "</td>"); 
         html.Append("<td>" + dt.Rows[i]["field"] + "</td>"); 
         html.Append("<td>" + dt.Rows[i]["old"] + "</td>"); 
         html.Append("<td>" + dt.Rows[i]["new"] + "</td>"); 
         html.Append("<td>" + dt.Rows[i]["Name"] + "</td>"); 
         html.Append("<td>" + dt.Rows[i]["UpdatedOn"] + "</td>"); 
         html.Append("</tr>"); 
        } 

        html.Append("</tbody>"); 
        html.Append("</table>"); 
       } 
      } 
     } 
     catch (Exception ex) 
     { 
     } 

     return html.ToString(); 
    } 
} 
+1

不要更改SQL,格式化HTML表格。 –

+0

這裏的Plzz是我的HTML表格格式 –

+0

您使用哪種技術將數據綁定到html? –

回答

1

更新

試過這樣:

string updateOn = ""; 
updateOn = ((DateTime)dt.Rows[i]["UpdatedOn"]).ToString("dd-MM-yyyy", CultureInfo.InvariantCulture); 
html.Append("<td>" + updateOn + "</td>"); 

OR

您可以使用格式日期時間在SQL:

更多格式at here

在你的情況下,它應該使用風格105

SELECT replace(convert(NVARCHAR, UpdatedOn, 105), ' ', '-') 
+0

我不能改變數據庫表:( –

+0

我還沒有測試。但我認爲當數據適用於這個文本框將刪除你不想要的字符 – vanloc

+0

我不輸入任何數據我只是在HTML表格上顯示它 –

0
Select convert(date,getdate()) 
0

你可以把它轉換成字符串,如:

dt.Rows[i]["UpdatedOn"].ToString("dd-MM-yyyy") 

無需在SQL Server端進行任何更改,日期格式是一個前端的問題。

+0

非常感謝您的先生 –

+0

我的榮幸!如果任何答案可以幫助您,感受自由地upvote /接受他們。這是偉大的方式說謝謝!:) – gofr1

相關問題