Làm th? nào đ? lưu tr? và truy xu?t thông tin tùy ch?nh t? m?t t?p tin c?u h?nh ?ng d?ng b?ng cách s? d?ng Visual Basic.NET ho?c Visual Basic 2005

D?ch tiêu đ? D?ch tiêu đ?
ID c?a bài: 313405 - Xem s?n ph?m mà bài này áp d?ng vào.
Đ?i v?i m?t Microsoft Microsoft Visual C#.NET Phiên b?n c?a bài vi?t này, xem 815786.
Bung t?t c? | Thu g?n t?t c?

? Trang này

TÓM T?T

Bài vi?t này ch?ng t? làm th? nào đ? lưu tr? thông tin tùy ch?nh trong m?t t?p tin c?u h?nh (.config) mà b?n có th? l?y l?i sau này trong th?i gian ch?y b?i ?ng d?ng liên quan c?a nó. Đây là m?t h?u ích khi b?n c?n ph?i xác đ?nh d? li?u đó là liên k?t v?i m?t ?ng d?ng.


Yêu c?u

Danh sách sau v?ch ra đư?c đ? ngh? ph?n c?ng, ph?n m?m, h? t?ng m?ng, và gói d?ch v? mà b?n c?n:
  • Microsoft Windows 2000, Microsoft Windows XP ho?c Microsoft Windows Server 2003
  • Microsoft Visual Studio.NET (2002) ho?c Microsoft Visual Studio.NET (2003) ho?c Microsoft Visual Studio 2005
Bài vi?t này gi? đ?nh r?ng b?n đ? quen thu?c v?i sau các ch? đ?:
  • Extensible Markup Language (XML)
  • .T?p tin c?u h?nh NET

T?o ?ng d?ng giao di?n đi?u khi?n mà đ?c n?i dung c?a t?p tin c?u h?nh

Lưu thi?t đ?t ?ng d?ng trong t?p tin c?u h?nh đó là k?t h?p v?i các ?ng d?ng. T?p tin c?u h?nh đư?c lưu trong XML đ?nh d?ng. Các System.Configuration và các System.collections.specialized không gian tên trong Microsoft.NET Framework bao g?m các c?n thi?t các l?p h?c đ? l?y thông tin t? m?t.T?p tin c?u h?nh ?ng d?ng NET trong th?i gian ch?y.

Đ? t?o ra m?t ?ng d?ng giao di?n đi?u khi?n mà đ?c các n?i dung c?a m?t t?p tin c?u h?nh liên k?t trong th?i gian ch?y, làm theo các bư?c sau:
  1. B?t đ?u Visual Studio.NET ho?c Visual Studio 2005.
  2. T?o m?t d? án giao di?n đi?u khi?n ?ng d?ng m?i đư?c đ?t tên ConConfig trong Visual Basic.NET ho?c Visual Basic 2005. Visual Basic.NET ho?c Visual Basic 2005 t?o ra m?t mô-đun, đ?t tên là Module1 b?i m?c đ?nh.
  3. Nh?p chu?t ph?i vào ConConfigD? ánthư m?c, đi?m đ?n Thêm, sau đó b?m Thêm m?i Kho?n m?c.

    Lưu ? Trong Visual Studio 2005, b?m chu?t ph?i vào ConConfigD? ánthư m?c, đi?m đ?n Thêm, sau đó b?m M?i Kho?n m?c.
  4. Trong các Thêm m?c m?i h?p tho?i, ch?n các ?ng d?ng T?p tin c?u h?nh m?u, nh?p vào M?, và sau đó thêm các t?p tin App.config vào d? án.

    Lưu ?Các Visual Studio.NET ho?c Visual Studio 2005 IDE sao App.Config vào c?p nơi t?p tin th?c thi biên so?n và đ?i tên nó trong <applicationname></applicationname>.<application type=""></application>.config đ?nh d?ng.
  5. B?n có th? s? d?ng m?t t?p tin c?u h?nh ?ng d?ng đ? thu th?p thi?t đ?t tùy ch?nh ?ng d?ng mà b?n ti?t ki?m trong khóa/giá tr? đ?nh d?ng. B?n có th? bao g?m <add></add> các y?u t? trong các <appsettings></appsettings> ph?n c?a m?t t?p tin c?u h?nh liên k?t. M?i khóa/giá tr? c?p có m?t <add></add> nguyên t?. M?t <add></add> ph?n t? có đ?nh d?ng sau:
    <add key="theKey" value="theValue" />
    						
    Thêm m?t <appsettings></appsettings> ph?n v?i <add></add> các y?u t? đ? t?p tin c?u h?nh gi?a các <configuration>t? khóa.</configuration> Ví d?, các sau t?p tin c?u h?nh bao g?m m?t <appsettings></appsettings> ph?n đó xác đ?nh ba ch?a khóa/c?p giá tr?:
    <?xml version="1.0" encoding="utf-8" ?>
    <configuration>
    	<appSettings>
    		<add key="Key0" value="0" />
    		<add key="Key1" value="1" />
    		<add key="Key2" value="2" />
    	</appSettings>
    </configuration>
    					
  6. Trong gi?i pháp Explorer, b?m đúp vàoModule1.VB đ? hi?n th? c?a s? m? Module1. Thêm các đi?u kho?n sau đây đ? mô-đun m? c?a b?n:

    Lưu ? Các báo cáo này ph?i xu?t hi?n trư?c khi b?t k? câu khác trong các t?p tin.
    Imports System.Configuration
    Imports System.Collections.Specialized
    					
  7. Trong các Ph? chính th? t?c, kích thư?c m?t bi?n chu?i đ? gi? giá tr? t? m?t c?u h?nh t?p tin quan tr?ng trong các <appsettings></appsettings> ph?n c?a t?p tin c?u h?nh:
    Dim sAttr As String
    					
  8. Đ? l?y m?t giá tr? cho m?t phím xác đ?nh t? các <appsettings></appsettings> ph?n c?a t?p tin c?u h?nh, s? d?ng các AppSettings phương pháp c?a các ConfigurationSettings l?p h?c. Các ConfigurationSettings l?p là ? các System.Configuration không gian tên. Khi các AppSettings phương pháp nh?n m?t tham s? đ?u vào chu?i có ch?a m?t khóa, các ?ng d?ng l?y giá tr? k?t h?p v?i phím.

    Các sau m? l?y giá tr? cho các Key0 thu?c tính t? t?p tin c?u h?nh liên k?t. Các m? sau đó đ?t giá tr? này trong bi?n chu?i, sAttr. N?u m?t phím không t?n t?i đ?i v?i giá tr? này, Không có g? đư?c lưu tr? trong sAttr.
    sAttr = ConfigurationSettings. AppSettings("Key0")
    					
  9. Đ? hi?n th? các giá tr? mà các ?ng d?ng truy trong các Giao di?n đi?u khi?n c?a s?, s? d?ng System.console.WriteLine:
    Console.WriteLine("The value of Key0: " & sAttr)
    					
  10. B?n có th? s? d?ng m?t trong nh?ng tham chi?u đ?n các AppSettings b?t đ?ng s?n đ? l?y t?t c? các khóa/c?p giá tr? trong các <appsettings></appsettings> keá tieáp. N?u b?n không ch? đ?nh tham s? nào khi b?n s? d?ng các AppSettings b?t đ?ng s?n, ?ng d?ng tr? v? t?t c? các k?t h?p khóa/c?p giá tr?. Nh?ng c?p đư?c lưu tr? trong m?t NameValueCollection lo?i, ch?a khóa/giá tr? m?c cho m?i phím mà các ?ng d?ng truy. Các NameValueCollection l?p là ? các System.collections.specialized không gian tên.
    Dim sAll As NameValueCollection
    sAll = ConfigurationSettings.AppSettings()
    					
  11. Các AllKeys tài s?n c?a NameValueCollection tài li?u tham kh?o m?t m?ng chu?i có m?t m?c nh?p cho m?i phím mà các ?ng d?ng truy. S? d?ng m?t Cho trang sau xây d?ng đ? iterate qua các AllKeys m?ng đ? truy c?p vào m?i phím ?ng d?ng truy. Mo?i phím m?c nh?p trong AllKeys là m?t ki?u d? li?u chu?i.
    Dim s As String
    For Each s In sAll.AllKeys
    					
  12. Bên trong các Đ?i v?i m?i xây d?ng, s? d?ng System.console.WriteLine đ? hi?n th? chính và giá tr? liên quan c?a nó trong bàn đi?u khi?n c?a s?. Ch?a khóa hi?n t?i các ?ng d?ng x? l? là "s." S? d?ng đi?u này như là m?t ch? s? trong các sAllNameValueCollection đ? có đư?c giá tr? liên quan c?a nó.

    Ví d?, n?u các quá tr?nh ?ng d?ng các Key0 ch?a khóa, sAll("Key0") l?y giá tr? liên quan c?a nó. Các Console.readline tuyên b? t?m d?ng bàn đi?u khi?n. B?n có th? b?m phím ENTER đ? k?t thúc các ?ng d?ng.
        Console.WriteLine("Key: " & s & " Value: " & sAll(s))
    Next
    Console.Readline
    					

Xác minh r?ng nó ho?t đ?ng

B?m phím F5 đ? ch?y m?. C?a s? giao di?n đi?u khi?n nên hi?n th? các ch?a khóa/c?p giá tr? t? các <appsettings></appsettings> ph?n c?a t?p tin c?u h?nh liên k?t như sau:
The value of Key0: 0
Key: Key0 Value:0
Key: Key1 Value:1
Key: Key2 Value:2
					

Danh sách m? đ?y đ?

Imports System.Configuration
Imports System.Collections.Specialized

Module Module1

    Sub Main()
        Dim sAttr As String

        sAttr = ConfigurationSettings.AppSettings("Key0")
        Console.WriteLine("The value of Key0: " & sAttr)
        
        Dim sAll As NameValueCollection
        sAll = ConfigurationSettings.AppSettings()

        Dim s As String
        For Each s In sAll.AllKeys
            Console.WriteLine("Key: " & s & " Value: " & sAll(s))
        Next
		  Console.ReadLine()
    End Sub

End Module
				

Hoàn thành t?p tin c?u h?nh danh sách (ConConfig.exe.config)

<configuration>
	<appSettings>
		<add key="Key0" value="0"/>
		<add key="Key1" value="1"/>
		<add key="Key2" value="2"/>
	</appSettings>
</configuration>
				

Gi?i đáp th?c m?c

  • T?p tin c?u h?nh đư?c lưu ? đ?nh d?ng XML. Đ?m b?o r?ng b?n làm theo t?t c? các quy t?c cú pháp XML. H?y nh? r?ng XML là trư?ng h?p nh?y c?m. N?u các XML không ph?i là t?t đư?c h?nh thành, ho?c n?u m?t ph?n t? sai chính t?, b?n nh?n đư?c m?t System.Configuration.Configuration ngo?i l?.

    Ví d?, n?u b?n thêm các thu?c tính quan tr?ng c?a m?t <add></add> nguyên t? v?i m?t ch? "K" thay v? m?t ch? "k" ho?c n?u các <appsettings></appsettings> ph?n xu?t hi?n như <appsettings></appsettings> (v?i m?t ch? hoa "A" thay v? c?a m?t ch? "a"), b?n nh?n đư?c m?t thông báo l?i.
  • Các t?p tin c?u h?nh ph?i bao g?m trong d? án.
  • B?n ph?i s? d?ng cú pháp sau cho tên t?p tin c?u h?nh khi t?p tin đư?c t?o ra bên ngoài c?a môi trư?ng Visual Studio và nó ph?i n?m trong thư m?c tương t? như ?ng d?ng liên quan đ?n:
    ApplicationName.ApplicationType.config
    nơi ApplicationName là tên c?a vi?c áp d?ng, ApplicationType là lo?i ?ng d?ng (ví d?, exe), và .config là các h?u t? c?n thi?t.

THAM KH?O

Đ? bi?t thêm chi ti?t, h?y truy c?p trang Web MSDN sau các trang web:
B?t đ?ng s?n ConfigurationSettings.AppSettings
http://msdn2.Microsoft.com/en-US/Library/System.Configuration.configurationsettings.appsettings (vs.71) .aspx
Không gian tên System.Configuration
http://msdn2.Microsoft.com/en-US/Library/System.Configuration (vs.71) .aspx

Thu?c tính

ID c?a bài: 313405 - L?n xem xét sau cùng: 27 Tháng Tám 2011 - Xem xét l?i: 2.0
Áp d?ng
  • Microsoft Visual Basic 2005
  • Microsoft Visual Basic .NET 2003 Standard Edition
  • Microsoft Visual Basic .NET 2002 Standard Edition
T? khóa: 
kbvs2005swept kbvs2005applies kbconfig kbhowtomaster kbmt KB313405 KbMtvi
Máy d?ch
QUAN TRỌNG: Bài vi?t này đư?c d?ch b?ng ph?n m?m d?ch máy c?a Microsoft ch? không ph?i do con ngư?i d?ch. Microsoft cung c?p các bài vi?t do con ngư?i d?ch và c? các bài vi?t do máy d?ch đ? b?n có th? truy c?p vào t?t c? các bài vi?t trong Cơ s? Ki?n th?c c?a chúng tôi b?ng ngôn ng? c?a b?n. Tuy nhiên, bài vi?t do máy d?ch không ph?i lúc nào c?ng hoàn h?o. Lo?i bài vi?t này có th? ch?a các sai sót v? t? v?ng, cú pháp ho?c ng? pháp, gi?ng như m?t ngư?i nư?c ngoài có th? m?c sai sót khi nói ngôn ng? c?a b?n. Microsoft không ch?u trách nhi?m v? b?t k? s? thi?u chính xác, sai sót ho?c thi?t h?i nào do vi?c d?ch sai n?i dung ho?c do ho?t đ?ng s? d?ng c?a khách hàng gây ra. Microsoft c?ng thư?ng xuyên c?p nh?t ph?n m?m d?ch máy này.
Nh?p chu?t vào đây đ? xem b?n ti?ng Anh c?a bài vi?t này:313405

Cung cấp Phản hồi

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com