Merhaba arkadaşlar app.config dosyasından connection string i cekerken Şöyle bir hata alıyorum
Server Error in '/' Application.
Object reference not set to an instance of an object.
Description: An unhandled exception occurred during the execution of the current web request. Please review the stack trace for more information about the error and where it originated in the code.
Exception Details: System.NullReferenceException: Object reference not set to an instance of an object.
Source Error:
Line 24: get Line 25: { Line 26: return ConfigurationManager.ConnectionStrings["MyBlogDatabaseName"].ConnectionString; Line 27: Line 28: }
Neyden kaynakalıyo olabilir acaba
Cevaplar
E
database ismini yanlış yazmış olabilirmisin
Y
sqlserver çalışıo mu? veya hangi database'e bağlıosan o ?
Çalışıyo Normal SqlConnection SqlCommand sınıfı oluşturdugumda çalışıyor app.config dosyasındaki value degerleriyle fakat çekmeye çalışırken ordan o satırda hata alıyorum..
Başka bir metod içinden bu property e ulaşıyorum yani orda connection stringine baglıyorum
J
bu hatanın sebebi erişmek istediğin birşeyi bulamıyorsun.
return ConfigurationManager.ConnectionStrings["MyBlogDatabaseName"].ConnectionString;
"MyBlogDatabaseName" configurasyon dosyasında varmı?
ConnectionStrings düğümünde MyBlogDatabaseName isimli bir bağlantı cümlesi bulamadığını söylüyor. Bağlantı cümleni MyBlogDatabaseName ismiyle ConnectionStrings düğümüne eklersen problemin çözülecektir.
app.config dosyasının içi şöyle
<?xml version="1.0" encoding="utf-8" ?>
<configuration>
<connectionStrings>
<add name="MyBlogDatabaseName" connectionString="Data Source=(local);Initial
Catalog=MyBlogDB;Integrated Security=True" />
</connectionStrings>
</configuration>
connection açmaya çalıştıgım sınıfta şöyle
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Configuration;
using System.Data.SqlClient;
namespace DAL
{
public class ConnectionProvider
{
public static SqlConnection CreateConnection()
{
SqlConnection sqlcon = new SqlConnection();
sqlcon.ConnectionString = ConnectionProvider.connectionString;
return sqlcon;
}
public static string connectionString
{
get
{
return ConfigurationManager.ConnectionStrings["MyBlogDatabaseName"].ConnectionString.ToString();
}
}
}
}
ClassLibrary içinde bulunuyor app.config dosyam aynı solution içinde
J
return ConfigurationManager.ConnectionStrings["MyBlogDatabaseName"].ConnectionString.ToString();
buraya breakpoint koy,ConfigurationManager instance'ı dolu mu?
C
C#'ta arada sıyırmalar oluyor. İstersen kaynak kodunu kopyala, yeni bir isimde .cs dosyası oluştur kodlarını buraya tekrar kopyala bunu derle. Bakalım aynı hatayı alacakmısın.
.config dosyasını direk solution seviyesine çıkartırsan daha iyi olacak sanki. Kodlarda yada config dosyasında hata yok. Birde şuna dikkat et programı çalıştırdığında çalıştırdığın exe nin yanında aynı isimle bir config uzantılı dosya varmı? Varsa onun içeriğinde senin bağlantı cümlenin olup olmadığına bak. Çünkü programın o config dosyasına bakacak diğerleri onun için önemli değil.
Başka config dosyalarından ayar okumak ise daha farklı bir iş.
Çok teşekkür ederim arkadaşlar sorunumu halletiim.
ClassLibrary dosyasında app.config den alıyordum ben fakat web app. bölümünde kullanmaya çalışıyodum configurationmanager web.config den çekmeye çalışıyomuş bu yüzden nullreference hatası alıyodum fakat şimdi başka bir sorunla karşılaştım ya off
Must declare the scalar variable "@CategoryInsertionDate".
Verilen hata bu ? Anlamı nedir ne sebep olmuş olabilir?
C
Category InsertionDate'e aktarılan değişken sayısal değil gibi birşey. string mi kullandın?
Category InsertionDate tipi ne tanımladın?
N
@CategoryInsertionDate 'a değer vermemişsin sanırım.
Tamamdır arkadaşlar parametreyi yazarken yalış yazdığım için tanımlanmayan parametre uyarısı veriyomuş gözümden kaçmış herkese teşekkür ederim
Cevabını yaz
Cevap yazmak için giriş yap ya da üye ol. Eski forum kullanıcı adın ve parolanla girebilirsin.