App.config থেকে সংযোগের স্ট্রিং পান


380
var connection = ConnectionFactory.GetConnection(
    ConfigurationManager.ConnectionStrings["Test"]
    .ConnectionString, DataBaseProvider);

এবং এটি আমার অ্যাপকনফিগ:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <connectionStrings>
        <add name="Test" connectionString="Data Source=.;Initial Catalog=OmidPayamak;Integrated Security=True" providerName="System.Data.SqlClient" />
    </connectionStrings>
</configuration>

কিন্তু যখন আমার প্রকল্পটি চালায় এটি আমার ত্রুটি:

অবজেক্টের রেফারেন্স কোনও অবজেক্টের উদাহরণে সেট করা হয়নি।


5
আপনি কোথায় এই App.config রেখেছিলেন? আপনি যে অ্যাপ্লিকেশনটির প্রজেক্টটি চালাচ্ছেন বা কিছুটা চালাচ্ছেন? আপনার প্রথমে দরকার
abatishchev

3
System.Configration.dll এ একটি রেফারেন্স যুক্ত করুন এবং আপনার System.Configration.ConfigrationManager ব্যবহার করতে সক্ষম হওয়া উচিত।
daszarrin

আপনার সংযোগের স্ট্রিংয়ের একটি টাইপ রয়েছে। আপনার "সংহত" এবং "সুরক্ষা" এর মধ্যে একটি স্থান দরকার
ওনুর ওমর

@ অনুর ওমর - স্থান ("ইন্টিগ্রেটেড সিকিউরিটির পরিবর্তে" "ইন্টিগ্রেটেড সিকিউরিটি") অন্তর্ভুক্ত করতে প্রশ্ন আপডেট করা হয়েছে
স্লিমসঘস্ট

উত্তর:


484

আপনি কেবল নিম্নলিখিতটি করতে পারবেন না:

var connection = 
    System.Configuration.ConfigurationManager.
    ConnectionStrings["Test"].ConnectionString;

আপনার সমাবেশ এছাড়াও একটি রেফারেন্স প্রয়োজন System.Configuration.dll


14
আমি জানি যে এটি একটি সি # প্রশ্ন, তবে যেহেতু এটি গুগল অনুসন্ধান ফলাফলের শীর্ষ, ভিবিতে এটি করা, এটি System.Configuration.ConfigurationManager.ConnectionStrings("Test").ConnectionStringআমাদের মধ্যে যারা ভিবি কোড বজায় রাখতে হবে
জেএফএ

296

যেহেতু এটি খুব সাধারণ প্রশ্ন তাই 4 সহজ ধাপে অনুসরণ করা সহজ করার জন্য আমি ভিজ্যুয়াল স্টুডিও থেকে কিছু স্ক্রিন শট প্রস্তুত করেছি।

app.config থেকে সংযোগের স্ট্রিং পান


22
এই উত্তরটি ভালবাসি। আমার ভিএস এর ভার্সনে ডিফল্টরূপে (ভিএস ২০১২ আলটিমেট) এই গ্রন্থাগারটি অন্তর্ভুক্ত নয়, তবে using System.Configurationএখনও কাজ করে
ডেভিড কলওয়েল

3
আমার কাছে সত্যিই রেফারেন্স যোগ করতে হবে বা ব্যবহারটি আন্ডারলাইন করা হয়নি তবে এখনও কনফিগারেশন ম্যানেজার অজানা। ধন্যবাদ!
কোডিংইউরলাইফ

33
string str = Properties.Settings.Default.myConnectionString; 

1
যদি কোনও প্রকল্পের লিঙ্ক হিসাবে app.config যুক্ত করা হয়?
ফ্রেনকিবি

2
এটি কেবল তখনই কাজ করবে যদি আপনার সংযোগ স্ট্রিংটি একটি অ্যাপ্লিকেশন সেটিং হয়, এটি পুনরুদ্ধার করতে পারলে কাজ করবে না <connectionStrings> অ্যাপকনফাইগ থেকে উপাদানগুলি (এটি ওপি যা বলেছে!)।
BrainSlugs83

31

এছাড়াও আপনি যে System.Configurationdllটিকে আপনার উল্লেখের অন্তর্ভুক্ত করেছেন তা পরীক্ষা করে দেখুন । এটি ছাড়া ConfigurationManagerআপনার সিস্টেমে ক্লাসে অ্যাক্সেস থাকবে না on কনফিগারেশন নেমস্পেস।


22

প্রথমে System.Configurationআপনার পৃষ্ঠায় একটি রেফারেন্স যুক্ত করুন ।

using System.Configuration;

তারপরে আপনার app.config অনুযায়ী সংযোগের স্ট্রিং অনুসরণ করুন।

string conStr = ConfigurationManager.ConnectionStrings["Test"].ToString();

এটি এখন আপনার হাতে আপনার সংযোগের স্ট্রিং রয়েছে এবং আপনি এটি ব্যবহার করতে পারেন।


16
//Get Connection from web.config file
public static OdbcConnection getConnection()
{
    OdbcConnection con = new OdbcConnection();
    con.ConnectionString = System.Configuration.ConfigurationManager.ConnectionStrings["con"].ConnectionString;
    return con;     
}

6

এটি চেষ্টা করে দেখুন

string abc = ConfigurationManager.ConnectionStrings["CharityManagement"].ConnectionString;

3

1) একটি নতুন ফর্ম তৈরি করুন এবং এটি যুক্ত করুন:

Imports System.Configuration
Imports Operaciones.My.MySettings

Public NotInheritable Class frmconexion

    Private Shared _cnx As String
    Public Shared Property ConexionMySQL() As String
        Get
            Return My.MySettings.Default.conexionbd
        End Get
        Private Set(ByVal value As String)
            _cnx = value
        End Set
    End Property

End Class

তারপরে আপনি যখন সংযোগটি ব্যবহার করতে চান তখন এটি আপনার আকারে করুন:

 Private Sub frmInsert_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load

Dim cn As New MySqlConnection(frmconexion.ConexionMySQL)
cn.open()

এবং এটাই. আপনি ডিবিতে সংযুক্ত থাকবেন এবং স্টাফ করতে পারেন।

এটি vb.net এর জন্য তবে যুক্তিটি একই।



3

আমারও একই প্রশ্ন ছিল. আমার সমাধান দুটি প্রকল্প থেকে নির্মিত হয়েছিল। একটি Class libraryএবং ক্লাস লাইব্রেরি প্রকল্পের জন্য একটি ওয়েবসাইট উল্লেখ। সমস্যাটি হ'ল আমি App.configআমার Class libraryপ্রকল্পটিতে প্রবেশ করার চেষ্টা করছিলাম তবে সিস্টেমটি Web.configওয়েবসাইটটির সন্ধান করছিল । আমি সংযোগের স্ট্রিংটি ভিতরে রেখেছিWeb.config ... সমস্যাটি সমাধান হয়েছে!

মূল কারণটি ছিল যে ConfigurationManagerঅন্য একটি সমাবেশে ব্যবহৃত হওয়া সত্ত্বেও এটি রাননিগ প্রকল্পের ভিতরে অনুসন্ধান করছিল।


3

সংযোগের স্ট্রিং পেতে আপনি এই পদ্ধতিটি ব্যবহার করতে পারেন

using System; 
using System.Configuration;

private string GetConnectionString()
{
    return ConfigurationManager.ConnectionStrings["MyContext"].ConnectionString;
}


2

প্রথমে আপনাকে System.Configurationআপনার প্রকল্পের রেফারেন্স যুক্ত করতে হবে এবং তারপরে সংযোগের স্ট্রিং পেতে নীচের কোডটি ব্যবহার করতে হবে।

_connectionString = ConfigurationManager.ConnectionStrings["MYSQLConnection"].ConnectionString.ToString();

2

এটি আমার পক্ষে কাজ করেছে:

string connection = System.Configuration.ConfigurationManager.ConnectionStrings["Test"].ConnectionString;

আউটপুট:

ডেটা উত্স =।; প্রাথমিক ক্যাটালগ = ওমিডপায়ামাক; ইন্টিগ্রেটেডসিকিউরিটি = সত্য "


1

নীচের কোডের লাইনটি ব্যবহার করে আপনি সংযোগের স্ট্রিং আনতে পারেন -

using System; using System.Configuration;

var connectionString=ConfigurationManager.ConnectionStrings["MyConnectionString"].ConnectionString;

এখানে একটি রেফারেন্স রয়েছে: App.config থেকে সংযোগের স্ট্রিং


2
আপনি যেমন বলেছিলেন তেমনই করেছি তবে একই নাল রেফারেন্স ত্রুটিটি পাচ্ছি।
মায়াময় মন

1

দেখে মনে হচ্ছে সমস্যাটি রেফারেন্সের সাথে নয়, আপনি সংযোগটি নাল হিসাবে পেয়ে যাচ্ছেন তাই দয়া করে নিশ্চিত হয়ে নিন যে আপনি আপনার চলমান প্রকল্পের কনফিগার ফাইলটিতে মানটি যুক্ত করেছেন যার অর্থ মূল প্রোগ্রাম / লাইব্রেরি যা প্রথমে শুরু / সম্পাদন হয়।


1

সম্ভবত এই প্রশ্নের ওপি একটি ডেল এর মধ্যে একটি App.Config ব্যবহার করার চেষ্টা করছে।

এই ক্ষেত্রে, কোডটি আসলে ডিলের নয়, এক্সিকিউটেবলের অ্যাপ.কনফিগটি অ্যাক্সেস করার চেষ্টা করছে। যেহেতু নামটি পাওয়া যায় নি, আপনি একটি নুল ফিরে পেয়েছেন, সুতরাং ব্যতিক্রমটি প্রদর্শিত হবে।

নিম্নলিখিত পোস্ট সহায়ক হতে পারে: একটি ডিএলএল এর app.config থেকে সংযোগ স্ট্রিং নাল


0

আমি System.Configurationগ্রন্থাগারটি উল্লেখ করেছি এবং আমারও ত্রুটি রয়েছে। ডিবাগ ফাইলগুলির অ্যাপ্লিকেশনটি ছিল না, ম্যানুয়ালি এই ফাইলটি তৈরি করুন create ত্রুটিটি হ'ল, আমি এটি ডিবাগ ফোল্ডারে "appname.exe.config" ফাইলটি অনুলিপি করে সমাধান করেছি। আইডিই ফাইলটি তৈরি করে নি।


0

আমি স্ট্রিং পড়ার জন্য সূচকটি ব্যবহার করে এবং একে একে পরীক্ষা করে সমস্যার সমাধান করেছি। নাম ব্যবহার করে পড়া এখনও একই ত্রুটি দেয়।
আমি যখন একটি সি # উইন্ডো অ্যাপ্লিকেশন বিকাশ করি তখন আমার সমস্যা হয়, আমার এসপি নেট অ্যাপ্লিকেশনটিতে আমার সমস্যা হয়নি। সেটিংয়ে অবশ্যই এমন কিছু থাকতে হবে যা সঠিক নয়।

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.