• mvc生成静态页


     private bool GenerateStaticPage(string viewPath,
                                                      string htmlPath,
                                                      ControllerContext context, object model = null, bool isPartial = false,
                                                      string masterName = "")
            {
    
                //创建存放静态页面目录                              
                if (!Directory.Exists(Path.GetDirectoryName(htmlPath)))
                {
                    Directory.CreateDirectory(Path.GetDirectoryName(htmlPath));
                }
                //删除已有的静态页面  
                //if (System.IO. File.Exists(htmlPath))
                //{
                //    System.IO.File.Delete(htmlPath);
                //}
                ViewEngineResult result = null;
                if (isPartial)
                {
                    result = ViewEngines.Engines.FindPartialView(context, viewPath);
                }
                else
                {
                    result = ViewEngines.Engines.FindView(context, viewPath, masterName);
                }
    
                if (model != null)
                {
                    context.Controller.ViewData.Model = model;
                }
    
                if (result.View != null)
                {
                    using (var sw = new StringWriter())
                    {
                        var viewContext = new ViewContext(context,
                                                          result.View,
                                                          context.Controller.ViewData,
                                                          context.Controller.TempData, sw);
    
                        result.View.Render(viewContext, sw);
    
                        string body = sw.ToString();
                        System.IO.File.WriteAllText(htmlPath, body, System.Text.Encoding.UTF8);
    
    
                    }
                }
                else
                {
    
                }
                return true;
    
            }

  • 相关阅读:
    动态链接库DLL
    异常处理
    内存
    线程同步
    线程基础、线程调度
    笔记摘录:进程、作业
    工具DebugView、PCHunter、Procexp、Procmon
    使用Windbg和VMware来搭建调试内核的环境
    C++智能指针
    AndroidEventBus
  • 原文地址:https://www.cnblogs.com/windseasons/p/7803582.html
Copyright © 2020-2023  润新知