2017-11-03 2 views
0

C#MVC 5でセルへのエクスポート中にExcelシートのセルへのハイパーリンクを作成したいグリッドビューを使用してExcelにエクスポートしています。 アンカータグを使用してリンクを作成しました。ファイルがエクスポートされると、そのフィールドが文字列として読み込まれます。 これを達成するもう1つの方法は何ですか?asp.netでプログラムでハイパーリンクを作成するにはどうすればいいですか?C#mvc 5 ExcelでシートセルをExcelにエクスポートする際には、gridviewを使用してExcelにエクスポートします。

以下

は、私が試したものです:

var result = from cssd in csdvm.FillControlStatusDetails.AsEnumerable() 
        select new 
        { 
      link = "<a href='www.google.com'> Link</a> 
     } 

GridView gvExport = new GridView(); 
gvExport.AutoGenerateColumns = false; 

BoundField nameColumn = new BoundField(); 
nameColumn.DataField = "link"; 
nameColumn.HeaderText = "Link"; 
gvExport.Columns.Add(nameColumn); 

gvExport.DataSource = result.AsQueryable().ToList(); 

gvExport.DataBind(); 
gen.CreateExportHeaderRow(gvExport, "Control Status - Details"); 

Response.Clear(); 
Response.Buffer = true; 
Response.AddHeader("content-disposition", "attachment; filename=ControlStatusDeatils-" + DateTime.Now.ToFileTimeUtc() + ".xls"); 
Response.ContentType = "application/vnd.xls"; 
Response.Charset = ""; 

System.IO.StringWriter sw = new System.IO.StringWriter(); 
System.Web.UI.HtmlTextWriter htw = new System.Web.UI.HtmlTextWriter(sw); 

gvExport.RenderControl(htw); 

Response.Output.Write(sw.ToString()); 
Response.Flush(); 
Response.End(); 
+0

をExcelにエクスポートするをしていながら、Excelのセルにハイパーリンクを与えることができていたコードの上に使用して

答えて

0

私はout..iは、以下のリンクを追加するためにループに使用する方法を見つけありがとう

for (int i = 0; i < gvExport.Rows.Count; i++) 
var link = "<a href='" + gvExport.Rows[i].Cells[9].Text + "'>" + gvExport.Rows[i].Cells[10].Text+ "</a>" + "<br/>"; 
} 

gvExportやっているものです。行[i] .Cells [9] .Text = MvcHtmlString.Create(リンク).ToHtmlString();私は実際に私は添付ファイルへのリンクを提供したい

関連する問題