-1

我的 asp.net Web 应用程序有一个 HTML 代码,当我按下按钮提交时,它会调用一个函数来读取 bd 中的内容并将其加载到具有特定模板的 html 页面中,我想知道如何替换静态数据在原始 HTML 文件中使用 C# 来自 mysql 数据库的动态文件。在我的代码中,我确实读取了输入文件,并创建了一个要写入的输出文件,如下所示:

    StreamReader sr = new StreamReader("filepath/inputcv.html");
    StreamWriter sw = new StreamWriter("filepath/outputcv.html");

这是我需要用我的数据库中的内容替换本段内容的代码的一部分

<div class="sectionContent">
    <p>@1</p>
</div>

我看到了这段代码,我想这样做,但我不知道如何在其中编写查询

    StreamReader sr = new StreamReader("path/to/file.txt");
    StreamWriter sw = new StreamWriter("path/to/outfile.txt");
     string sLine = sr.ReadLine();
         for (; sLine; sLine = sr.ReadLine() )
        {
         sLine = "{" + sLine.Replace(" ", ", ") + "}";
        sw.Write(sLine);
        }
4

2 回答 2

0

可以将外部数据存储在文本文件、XML 文件或数据库中,并将其用于 HTML 页面内容的动态更新。澄清的第一个要求:什么将作为“动态”数据更新的“过滤器”起作用,换句话说,您的代码的哪一部分将执行 select 语句的动态更新(在 mySQL 的情况下)?如果该语句保持不变,则意味着基础数据正在发生变化,但是控制数据库中的变化的是什么?页面更新的理想数据刷新率是多少?在进行实际代码之前,应首先澄清这一点。

希望这会有所帮助。我最好的,AB

于 2013-05-07T21:05:35.487 回答
0

Here is what I come up with based upon what you have provided. Please comment with more details if this is not enough.

        string strHTMLPage = "";
        string strNewHTMLPage = "";
        int intStartIndex = 0;
        int intEndIndex = 0;
        string strNewDataToBeInserted = "Assumes you loaded this string with the
                                         data you want inserted";

        StreamReader sr = new StreamReader("filepath/inputcv.html");
        strHTMLPage = sr.ReadToEnd();
        sr.Close();

        intStartIndex = strHTMLPage.IndexOf("<div class=\"sectionContent\">", 0) + 28;
        intStartIndex = strHTMLPage.IndexOf("<p>", intStartIndex) + 3;

        intEndIndex = strHTMLPage.IndexOf("</p>", intStartIndex);

        strNewHTMLPage = strHTMLPage.Substring(0, intStartIndex);
        strNewHTMLPage += strNewDataToBeInserted;
        strNewHTMLPage += strHTMLPage.Substring(intEndIndex);


        StreamWriter sw = new System.IO.StreamWriter("filepath/outputcv.html", false, Encoding.UTF8);
        sw.Write(strNewHTMLPage);
        sw.Close();
于 2013-05-07T21:39:39.310 回答