c# - SQL 和 C# 从数据库检索单个记录

标签 c# asp.net sql

我有一个网页,其中包含一个包含书籍列表的下拉列表。这些书都存储在sql服务器上。使用 MVC 和 aspx 页面,我试图找出如何检索有关一本书的信息,以便当用户选择一本书时,它会传递该书的价格。我是 sql sever 和 var 语句的新手。

  1. 我能够从网页检索图书名称并将其发送到我的 Controller
  2. 在我的模型中,我试图获取这里的数据,这是我的想法。我想获取价格并将其存储到字符串中。但我见过提取信息的唯一方法是使用 var 语句。

这样

var price = from p in BooksDB.Price
 where p.Book_Name==bookName
    select new {p.Book_Price}

但是我如何获取该值并将其存储到基于我从下拉框中检索到的 Books_Name 的字符串中

顺便说一句,我的 table 是这样的

Id_Num   Book_Name    Book_Price
  1       Pro C#       29.99
  2       Beg C++      10.99

最佳答案

首先是术语更正。

var 只是编译器允许您用来替换类型的关键字。在编译时,编译器将根据使用情况找出类型。

var myString = "hihihi";
string myString = "hihihi";

var 语句与访问数据库无关,尽管添加它是为了让我们这些懒惰的开发人员更轻松地使用 LINQ。

相反,您正在做的是创建一个 LINQ to SQL 查询。我稍微修改了它(您不需要创建匿名对象)。创建语句后,您需要通过调用“ToList()、First() 或 FirstOrDefault() 等”来执行它

LINQ 通常对查询采用惰性或延迟计算,并且在触发执行之前不会执行。

var price = from p in BooksDB.Price
            where p.Book_Name==bookName
            select p.Book_Price;

//assuming Book_Price is stored as a string datatype.
string bookPrice = price.FirstOrDefault();
//otherwise
string bookPrice = (price.FirstOrDefault() ?? "").ToString();

if(!String.IsNullOrEmpty(bookPrice))
{
    //do something with the string.
}

关于c# - SQL 和 C# 从数据库检索单个记录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9961037/

相关文章:

SQL 仅选择拥有所有 3 个学位的成员

c# - Azure WebJobs - 未找到函数 - 如何进行无触发器作业?

c# - 缺少系统.Windows

asp.net - 更新 cookie 过期,值没有任何变化

sql - 使用跨 2 个表的内部连接更新 Postgres?

sql - H2 ddl 创建表

c# - 在wpf中格式化印度卢比

c# - 检查列表中属性的不同值(空值除外)

c# - session ID 不够随机 - ASP.NET

c# - Asp.net mvc web.config 和 web.debug.config 区别