Turkcell | Geleceği Yazanlar

Soru & Cevap

"Tanınmayan atlatma sırası" hatası C# Visual Studio

27.04.2020 - 19:16

Bu benim frmMusteri.cs kodum : 

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
using System.Data.SqlClient;
namespace MarkePro
{
    public partial class frmMusteri : Form
    {
        public frmMusteri()
        {
            InitializeComponent();
        }
        SqlConnection connectSql = new SqlConnection("Data Source=.\SQLEXPRESS;Initial Catalog=MarkePro;Integrated Security=True");
        private void label1_Click(object sender, EventArgs e)
        {

        }

        private void label5_Click(object sender, EventArgs e)
        {

        }

        private void btnMusteriEkle_Click(object sender, EventArgs e)
        {
            connectSql.Open();
            SqlCommand komut = new SqlCommand("insert into musteri(adSoyad) values(@adSoyad)", connectSql);
            komut.Parameters.AddWithValue("@adSoyad", txtMusteriAds.Text);
            komut.ExecuteNonQuery();
            connectSql.Close();
            MessageBox.Show("Müşteri Kaydı Eklendi!");
            foreach (Control item in this.Controls) 
            {
                if (item is TextBox)
                {
                    item.Text = "";
                }
            }
        }
    }
}

Bu da hata resmi

https://hizliresim.com/Bz2FAf

491 Görüntülenme

1 Cevap

Gürkan
27.04.2020 - 22:13

Bu hata, SqlConnection nesnesine ConnectionString parametresi olarak verdiğiniz değerde bulunan " \ " kaçış karakterinden dolayı meydana gelmektedir. Bunun için SqlConnection nesnenizi aşağıdaki gibi kullanabilirsiniz (string verinin başına @ işareti eklemelisiniz kısacası):

SqlConnection connectSql = new SqlConnection(@"Data Source=.\SQLEXPRESS;Initial Catalog=MarkePro;Integrated Security=True");

Ya da ConnectionString verisini ilk önce web.config dosyasına ekleyip daha sonra gerekli yerlerde bu dosyadan çekip kullanabilirsiniz. Aslında en çok önerilen ve sağlıklı yöntem de budur aslında. Örnek olarak aşağıya web.config dosyası içeriğini ve ConnectionString verisinin nasıl çekildiğini ekledim (Xml dosyasındaki etiket hiyerarşisine dikkat etmelisiniz):

web.config:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <add name="MyConnectionString" connectionString="Buraya kendi ConnectionString verinizi yazacaksınız." />
  </connectionStrings>
</configuration>  

Nasıl çağırılır?

string conStringVerisi = ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;

Umarım yardımcı olur. İyi çalışmalar.

Sitede yorum yapabilmek için giriş yapın ya da üye olun.

Sitedeki sorulara cevap verebilmek için giriş yapın ya da üye olun.