c# - 如何在mvc中获取网页的特定部分?

标签 c# html asp.net-mvc

我想获取当前页面的特定部分以将其保存在另一个文件中,例如 PDF 文件。

当我点击提交时,我想在 ActionResult 中获取当前 View 的这一部分:

<div id="t1" name="t1">
  .......
</div>

我尝试使用此代码获取:

client = new WebClient();
string url = HttpContext.Request.Url.AbsoluteUri;

string content = "";
Stream data = client.OpenRead(url);
StreamReader sr = new StreamReader(data);
content = sr.ReadToEnd();
data.Flush();
data.Close();

但我只想从当前页面获取名为 t1 的标记 div。

注意:我不想使用 jquery。我只想用 C# 来做。

最佳答案

尝试使用 HTMLAgilityPack对于这种事情...

示例代码块;

   public string GetContent(string url)
    {

        HtmlWeb hw = new HtmlWeb();
        HtmlDocument doc = hw.Load(url);
        HtmlNode node = doc.DocumentNode.SelectSingleNode("//div[@id='t1']");

        return node.InnerHtml;
    }

关于c# - 如何在mvc中获取网页的特定部分?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34308141/

相关文章:

c# - CRUD 类库设计,返回有关业务逻辑失败的有用消息,这并不异常(exception)

c# - .NET Core 托管服务和单例服务的区别

c# - 通过反射获取属性类型

c# - 使用 IMemoryCache 每个存储库单例?

php - 如何在 PHP 中将变量值保存在循环之外?

javascript - 如何使弹出窗口在屏幕上居中?

c# - LINQ to Entities 查询错误

asp.net - 在 Asp.net MVC 4 项目的 UI 层中不保留任何业务逻辑

c# - c# 中 encoding.utf8.getbytes 的问题

javascript - 忽略 "style"属性获取 div 的宽度和高度