C#ASP.NET根据db中的数据将html代码插入到转发器中

时间:2017-07-06 15:41:03

标签: c# html css asp.net

再次需要帮助

抱歉有点令人困惑,但是,我正在尝试创建一个聊天框,用户可以提交然后再从数据库中检索它,我正在关注此脚本https://bootsnipp.com/snippets/EkQe7

如您所见,HTML代码有两种类型,一种是聊天时,另一种是其他人聊天时,

Exception in thread "main" java.lang.NoClassDefFoundError: org/jsoup/Jsoup
    at ParseHTML.main(ParseHTML.java:9)
Caused by: java.lang.ClassNotFoundException: org.jsoup.Jsoup
    at java.net.URLClassLoader.findClass(URLClassLoader.java:381)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:424)
    at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:335)
    at java.lang.ClassLoader.loadClass(ClassLoader.java:357)
    ... 1 more

所以现在,我要做的是从DB检索消息然后代码隐藏将HTML代码提交到Repeater, 如果它是"你",那么将使用此代码

<div class="chat">   
      <div class="chat-history">
        <ul class="chat-ul">
          <li>
            <div class="message-data">
              <span class="message-data-name"><i class="fa fa-circle you"></i> You</span>
            </div>
            <div class="message you-message">
            A new client?!?! I would love to help them, but where are we going to find the time?

            </div>
          </li>
          <li class="clearfix">
            <div class="message-data align-right">
              <span class="message-data-name">Ada, your OperationsAlly</span> <i class="fa fa-circle me"></i>
            </div>
            <div class="message me-message float-right"> We should take a look at your onboarding and service delivery workflows, for most businesess there are many ways to save time and not compromise quality.  </div>
          </li>

        </ul>

      </div> <!-- end chat-history -->

    </div> <!-- end chat -->

如果是其他人,那么将使用此代码

    <div class="message-data">
      <span class="message-data-name"><i class="fa fa-circle you"></i> You</span>
    </div>
    <div class="message you-message">
    A new client?!?! I would love to help them, but where are we going to find the time?

    </div>

我的问题是如何从Code-Behind PageLoad中做到这一点?如何从代码隐藏中将上面的代码添加到Repeater中?

谢谢!

1 个答案:

答案 0 :(得分:0)

首先,您必须在后面的代码中检索数据库中的记录。 (有关详细信息,请参阅此msdn article

messages.DataSource = myMessages;
messages.DataBind();

现在我们可以使用Repeater,其中html由作者分隔,以迭代数据。请注意,我假设您的消息数据库是如何构建的。

<asp:Repeater id="messages" runat="server">
    <ItemTemplate>
        <div runat="server" visible='<% (Container.DataItem("author") == "us") %>'>
              <li>
                <div class="message-data">
                  <span class="message-data-name"><i class="fa fa-circle you"></i> You</span>
                </div>
                <div class="message you-message">
                    <%# Eval("testMessage") %>
                </div>
              </li>
        </div>
        <div runat="server" visible='<% (Container.DataItem("author") != "them") %>'>
              <li class="clearfix">
                <div class="message-data align-right">
                  <span class="message-data-name"><%# Eval("authorName") %></span> <i class="fa fa-circle me"></i>
                </div>
                <div class="message me-message float-right">
                    <%# Eval("testMessage") %>
                </div>
              </li>
        </div>          
    </ItemTemplate>
</asp:Repeater>

我还没有对这段代码进行过测试,但它对于该怎么做了很高的想法。您可能还想看到一些Examples on using Repeater