首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >使用ASP.NET从数据库插入文本

使用ASP.NET从数据库插入文本
EN

Stack Overflow用户
提问于 2014-06-25 18:02:54
回答 1查看 34关注 0票数 0

我已经做了一些搜索,但我似乎正在努力寻找答案,因为答案似乎总是围绕着ASP:GRIDVIEW。

我已经创建了一个SqlDataSource,它将从我的数据库中提取我需要的信息。但是,我现在要做的就是将这些特定的字段显示到已经格式化的区域中。我相信这是通过输入以下内容<% %>来实现的。

这是我的SqlDataSource:

代码语言:javascript
运行
复制
asp:SqlDataSource ID="SqlDataSource1" runat="server" ConnectionString="<%$ ConnectionStrings:ReviewConnectionString %>" ProviderName="<%$ ConnectionStrings:ReviewConnectionString.ProviderName %>" SelectCommand="SELECT * FROM [reviews] WHERE ([review] = ?)">
                              <SelectParameters>
                                  <asp:Parameter DefaultValue="={0}" Name="review" Type="String" />
                              </SelectParameters>
                              </asp:SqlDataSource>

这是我想要显示数据库中数据的位置

代码语言:javascript
运行
复制
<h3>(I WANT A FIELD FROM MY DATABASE TO DISPLAY HERE!)</h3>

正如我之前提到的,我相信它包括标签<% %>。但我可能很富裕。

任何帮助都是最好的!

EN

回答 1

Stack Overflow用户

发布于 2014-06-25 18:09:54

请查看asp:DetailsView (而不是asp:GridView)

http://msdn.microsoft.com/en-us/library/system.web.ui.webcontrols.detailsview(v=vs.110).aspx

DetailsView显示单个项目,就像GridView显示项目列表(在表格中)一样。

代码语言:javascript
运行
复制
<asp:DetailsView ID="DetailsView1" runat="server" 
    AutoGenerateRows="True" DataKeyNames="Key"
    DataSourceID="SqlDataSource1">
    <Fields>
        <asp:TemplateField HeaderText="">
            <h3><% Eval("Name") %></h3>
        </ItemTemplate>
    </Fields>
</asp:DetailsView>

然而,我会考虑上面的"hack“,而不是绑定自己来使用SqlDataSource。

如果您有一个常规的web应用程序,将您的sql语句移动到您的“代码隐藏”,并将结果绑定到一个文字将更好地分离视图,并使您的UI代码看起来简单如下:

代码语言:javascript
运行
复制
<h3><asp:Literal ID="Header" runat="server" /></h3>

然后你的后台代码就会像这样简单地绑定文字:

代码语言:javascript
运行
复制
Header.Text = "Hello World";

我没有添加用于从SQL数据库获取数据的代码,因为我也不同意这里的方法。我会创建一个LINQ Data Context (或使用实体框架)来将我的SQL schema映射到一个C#实体模型。如果你这样做了,那么从后台代码中选择元素就非常简单了:

代码语言:javascript
运行
复制
using(var db = new MyLinqDataContext())
{
    var review = db.Reviews.SingleOrDefault(o => o.Review = myReview);
    if(review != null)
        Header.Text = review.Name;
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24405691

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档