" /> 贤妻良母电影日本,恋夜影院安卓免费列表uc,国产偷窥盗摄一区二区

天天躁日日躁狠狠躁AV麻豆-天天躁人人躁人人躁狂躁-天天澡夜夜澡人人澡-天天影视香色欲综合网-国产成人女人在线视频观看-国产成人女人视频在线观看

在MVC2.0使用Lodop為WEB打印提出完美解決方案

  通過好友CallHot介紹Lodopweb打印控件。由于是國人開發的,故這兩天認真了研究下,打算在未來的項目中使用。現將學習成果與園友分享。如果存在不足的地方,希望您指出。

  具體的實現步驟如下:

  一、準備工作

   1.MVC2.0 + jQuery1.4.1 開發環境。

  2.Lodop web 打印控件,官方地址:http://mtsoftware.v053.gokao.NET/download.html  (注:國人開發,免費軟件)。

  3.StringTemplate,C#開源模板引擎。官方地址:http://www.stringtemplate.org。

  本文主要給出WEB下打印步驟實現方案,具體的技術實現細節,請查看官方API。lodop,stringtemplate 官方已給出了詳盡的文檔說明。

  二、MVC2.0使用StringTemplate構造打印模板

  StringTemplate 文中簡稱st。網絡上有相關文檔介紹st效率還不錯。本文將st作為報表打印模板。在實際項目開發中將繁雜的報表打印工作內容,部分分配給美工來處理。而開發人員只需提供數據源接口。使用st可以減輕開發人員的工作量。并將報表開發任務分工更細致。給項目帶來的好處就不多論了。具體實現如下:

  1.在MVC2.0項目中引用st核心dll:

  2.建立st的模板文件,template.st(st模板專用文件):

  也可以認為st文件就是一個普通的html文件。該部分主要由美工負責處理,比如CSS。

  3.在MVC2.0 controller 內建立提供數據源的 JsonResult:

public JsonResult Print()
{
//構造打印數據
List<CustomerTest> list = new List<CustomerTest>();
for (int i = 0; i < 100; i++)
{
list.Add(
new CustomerTest { CustomerName = "candy" + i, CustomerAddress = "思明區" + i, CustomerPhone = "13148484855" + i });
list.Add(
new CustomerTest { CustomerName = "linda" + i, CustomerAddress = "湖里區" + i, CustomerPhone = "13847487545" + i });
list.Add(
new CustomerTest { CustomerName = "ellie" + i, CustomerAddress = "海昌區" + i, CustomerPhone = "1359984665" + i });
}

//StringTemplate 打印模板文件,實際項目中為提高程序效率,應將打印模板文件緩存。
string serverPath = System.Web.HttpContext.Current.Server.MapPath("~");
string path = Path.Combine(serverPath, @"PrintTemplate/");

StringTemplateGroup group
= new StringTemplateGroup("myGroup", path, typeof(TemplateLexer));
StringTemplate st
= group.GetInstanceOf("template");
st.SetAttribute(
"customer", list);

//為打印提供html相關超文本內容。
StringBuilder sb = new StringBuilder();
sb.Append(
@"<html xmlns='http://www.w3.org/1999/xhtml' lang='zh-CN'>");
sb.Append(
"<head>");
sb.Append(
@"<meta http-equiv='Content-Type' content='text/html; charset=utf-8' />");
sb.Append(
@"<meta http-equiv='Content-Language' content='zh-CN' />");
string cssContent = System.IO.File.ReadAllText(Path.Combine(serverPath, @"Content/CSS/CSSForPrint.css"));
sb.Append(
@"<style type='text/css'>");
sb.Append(cssContent);
sb.Append(
@"</style>");
sb.Append(
"</head>");
sb.Append(
"<body>");
sb.Append(st.ToString());
sb.Append(
" ");
sb.Append(
"</body>");
sb.Append(
"</html>");

return Json(new { success = true, data = sb.ToString() }, JsonRequestBehavior.AllowGet);
}

NET技術在MVC2.0使用Lodop為WEB打印提出完美解決方案,轉載需保留來源!

鄭重聲明:本文版權歸原作者所有,轉載文章僅為傳播更多信息之目的,如作者信息標記有誤,請第一時間聯系我們修改或刪除,多謝。

主站蜘蛛池模板: 亚洲精品国产自在在线观看 | 成人做视频免费 | 99热这里只有精品88 | 538久久视频在线 | 精品AV综合导航 | 亚洲精品青青草原avav久久qv | 在线黑人抽搐潮喷 | 欧美一区二区三区男同 | 青青草色青伊人 | 国产亚洲精品精品国产亚洲综合 | 里番acg纲手的熟蜜姬训练场 | 精品国产免费观看久久久 | 美国69xxxx59 | 精品视频中文字幕 | 国产精品久久国产三级国不卡顿 | 精品三级久久久久电影网1 精品日韩视频 | 无码内射成人免费喷射 | 好男人在线高清WWW免费观看 | 欧洲精品一区二区不卡观看 | 高清 国产 在线 亚洲 | 久久亚洲A片COM人成A | 国产精品亚洲精品影院 | 丰满女友bd高清在线观看 | 亚洲午夜精品A片久久WWW解说 | 99久久精品免费看国产免费 | 亚洲精品中文字幕无码A片蜜桃 | 挤奶门事件完整照片 | 男人的天堂黄色片 | 蜜臀AV色欲A片无码一区 | 久久九九久精品国产尤物 | 精子pk美女 | 视频成人app永久在线观看 | J午夜精品久久久久久毛片 jzz大全18 | 超碰国产亚洲人人 | 欧美一区二区日韩一区二区 | 亚洲乱色视频在线观看 | 九九热伊人| 日韩高清特级特黄毛片 | 俄罗斯粗大猛烈18P 俄罗斯雏妓的BBB孩交 | 日本少妇内射视频播放舔 | 国产麻豆剧果冻传媒免费网站 |