2013-01-22 50 views
-1

我找不到这种奇怪行为的正确溶剂。 在另一个项目中,它的作用就像一个魅力。 它当我解决sqlconnection和使用System.Data.SqlClient它使这个红色下划线执行下....为什么它的行为是这样的?为什么executereader的行为如此?

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Web; 
using System.Web.UI; 
using System.Web.UI.WebControls; 
using System.Web.Configuration; 
using System.Data.SqlClient; 


public partial class Default3 : System.Web.UI.Page 
{ 
    protected void Page_Load(object sender, EventArgs e) 
    { 

     //********************************* 
     //Definerer connection stringen * 
     //********************************* 
     SqlConnection BilleddataBasen = new SqlConnection(WebConfigurationManager.ConnectionStrings["Boligforeningen_AB8"].ConnectionString); 

     //************************************** 
     //Definerer de forskellige variabler * 
     //************************************** 
     string ImageFilePath = ""; 
     string ImageName = ""; 
     string OverfoereDataTilImageControlPaaAspxSiden = ""; 

     //************************************************** 
     //Definerer hvordan der skal læses fra databasen * 
     //************************************************** 
     SqlCommand SelectBlogIndlæg = new SqlCommand("SELECT FileName, FilePath, OprettelsesDato, Tittel, BilledetsIndhold FROM BillederTilGalleri", BilleddataBasen); 

     BilleddataBasen.Open(); 
     SqlDataReader reader = BilleddataBasen.ExecuteReader(); 
     while (reader.Read()) 
     { 
      ImageName += reader["FileName"]; 
      ImageFilePath += reader["FilePath"]; 
      lbl_OprettelsesDato.Text += reader["OprettelsesDato"]; 
      lbl_BilledNavnet.Text += reader["Tittel"]; 
      lbl_BeskrivelseAfBilledet.Text += reader["BilledetsIndhold"]; 
     } 

     OverfoereDataTilImageControlPaaAspxSiden = ImageFilePath + ImageName; 
     lbl_BilledFraDataBasen.ImageUrl = OverfoereDataTilImageControlPaaAspxSiden; 

     //************************************************ 
     //Følgende to linier bestemmer pixel størrelse * 
     //************************************************ 

     lbl_BilledFraDataBasen.Width = 300; 
     lbl_BilledFraDataBasen.Height = 250; 

     //************************************* 
     //Lukker ned for database tilgangen * 
     //************************************* 
     reader.Close(); 
     BilleddataBasen.Close(); 
    } 
} 
+0

请更改您的问题。现在,我不知道你在问什么。 –

+0

那么红色'下划线'位是否显示错误?编译时会出错吗? – Arran

+0

呃...它告诉我,我错过了一个assambly参考。然而,右键点击它并不能给我一个“解决方案”选项。 – Anders

回答

3

SqlConnection没有一个ExecuteReader方法。 SqlCommand呢。你应该叫:

SqlDataReader reader = SelectBlogIndlæg.ExecuteReader(); 

注意,当你建立,编译器错误信息应与你需要诊断这个自己的所有信息,只要你 - 至少是第一部分。值得回顾一下,弄清楚如何为自己解决这个问题(因此你如何解决下一个问题)。

随着旁白:

  • 你应该使用所有资源(连接,命令,读卡器)列表项
  • 在循环连接字符串通常是一个坏主意using陈述(在这种情况下它看起来并不像你已经有了一个分隔符,这样你的价值都将被涂抹在一起)
  • 常规变量使用驼峰而不是PascalCase

另外,你说:

在另一个项目中,这就像一个魅力。

根本不是这样。您提供的代码而不是可以在任何项目中工作。

+0

我没注意到!尼斯接机!也许这是非英语命名惯例.. –

+0

不...抱歉。设置变量时。并改变selectblogindlægtobilleddatabasen,它仍然给我一个错误。 – Anders

+3

这不是*近*足够的信息。 “一个错误”可能是任何事情。此外,您应该*尝试*为自己解决这个问题 - 我们不会为每一个错误提供解决方案。 –

0

你在你的SqlConnection对象上调用ExecuteReader,你应该在你的Command对象上调用它。

SqlDataReader reader = SelectBlogIndlæg.ExecuteReader(); 
相关问题