Yapılandırma öğesi bildirilmedi


87

Visual Studio 2012 Express Edition'da bazı işler yapıyorum. Aşağıdaki gibi bir App.config XML dosyası ekledim:

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
</configuration>

İlk olarak, "'konfigürasyon' öğesi bildirilmedi" şeklinde bir uyarı gelir. Bunun neden olduğunu bilen var mı? Görünüşe göre bu çözülene kadar içinde elemanlar bildirilemez.

Teşekkürler!

Bu, XML'in tamamıdır:

<?xml version="1.0" encoding="utf-8"?>
<configuration>
<appSettings>
<add key="Version" value="779" />
<add key="TimeOut" value="60000" />
<add key="LogFileName" value="Log.txt" />
<!-- your Developer Id with eBay -->
<add key="Environment.DevId" value="" />
<!-- your Application Id with eBay -->
<add key="Environment.AppId" value="" />
<!-- your Application Certificate with eBay -->
<add key="Environment.CertId" value="" />
<!-- API Server URL -->
<!-- For production site use: https://api.ebay.com/wsapi -->
<!-- For Sandbox use: https://api.sandbox.ebay.com/wsapi -->
<add key="Environment.ApiServerUrl" value="https://api.sandbox.ebay.com/wsapi" />
<!-- EPS Server URL -->
<!-- For production site use: https://api.ebay.com/ws/api.dll"/-->
<add key="Environment.EpsServerUrl" value="https://api.sandbox.ebay.com/ws/api.dll" />
<!-- eBay Signin URL -->
<!-- For production site use: https://signin.ebay.com/ws/eBayISAPI.dll?SignIn -->
<!-- https://signin.sandbox.ebay.com/ws/eBayISAPI.dll?SignIn -->
<add key="Environment.SignInUrl" value="https://signin.sandbox.ebay.com/ws/eBayISAPI.dll?SignIn" />
<!-- ViewItem URL -->
<!-- For production site use: http://cgi.ebay.com/ws/eBayISAPI.dll?ViewItem&amp;item={0} -->
<add key="Environment.ViewItemUrl" value="http://cgi.sandbox.ebay.com/ws/eBayISAPI.dll?ViewItem&amp;item={0}" />
<!-- token is for both API server and EPS server -->
<add key="UserAccount.ApiToken" value="" />
<!-- eBay site ID -->
<add key="UserAccount.eBayUserSiteId" value="0" />
<add key="logexception" value="true"/>
<add key="logmessages" value="true"/>
<add key="logsdkmessages" value="true"/>
<add key="logsdk" value="true"/>
<add key="logfile" value="Log.txt"/>
<!-- Rule Name-->
<add key="RuName" value=""/>
<!-- Set this if you access eBay API server behind a proxy server-->
<add key="Proxy.Host" value =""/>
<add key="Proxy.Port" value =""/>
<!-- set proxy server username/password if necessary-->
<add key="Proxy.Username" value=""/>
<add key="Proxy.Password" value=""/>


4
DotNetConfig.xsd dosyasının neye benzediğine bir göz atmanız gerekebilir. C: \ Program Files (x86) \ Microsoft Visual Studio 10.0 \ Xml \ Schemas
Adriaan Stander

Tam hata nedir, bu uyarıyı veren nedir? dolu bir çerçeve ile lütfen?
Simon Mourier

VS2012 Express sürümümde çalışıyor.
Martin Mulder 13

1
Bu bir zeka meselesidir. Yepyeni bir konsol uygulamasıyla, App.config'i açın ve <configuration> öğesinin altı mavi olarak "'configuration' öğesi tanımlanmadı" hatasıyla belirtilir, ancak yine de bir <appsettings> bölümü ekleyebilirsiniz. içindeki ayarlar ve ConfigurationManager sınıfıyla bunlara referans verir, ancak appsettings ve <anahtar ekle ... öğeleri eklerken, intellisense görünmez. Hakkında daha fazla bilgi almak istediğim tamamen zekice bir mesele, dolayısıyla ödül.
seekerOfKnowledge

1
yanlış cevap seçildi.
JJS

Yanıtlar:


23

Ben de aynı sorunu yaşadım. Bu bir hata değil, sadece bir uyarıdır; bu nedenle uygulamanız yine de derlenmelidir. Aşağıdaki basit yapılandırma dosyasını kullandım ve uyarı hala üretiliyor.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
    <startup> 
        <supportedRuntime 
             version="v4.0"sku=".NETFramework,
             Version=v4.5"/>
    </startup>
</configuration>

Bu, MSDN web sitesinde ortaya çıkan bir sorundur, ancak tatmin edici bir şekilde çözülmüş görünmemektedir. Aşağıdaki bağlantıya bakın:

http://social.msdn.microsoft.com/Forums/en-US/Vsexpressvcs/thread/18a1074f-668f-4fe3-a8d9-4440db797439



344

XML menüsüne gidin (visual studio üst menü öğesi) şemaları seçin ve DotNetConfig.xsd'yi bulun ve Bu şemayı kullan'ı seçin .

XML - Şemalar

XML Şemasını Düzenle

Senin sorunun kesinlikle çözülecek


6
Cevap bu olmalı. Bu cevabın gönderildiği tarihe (Ağustos '15) baktığımda, bu cevabın soru anında var olup olmadığından emin değilim (Eylül '12). (Yaptı mı?)
Ian

1
Bu tek başına benim için işe yaramadı. Şunu düşünün: stackoverflow.com/questions/4355278/…
Matt

2
Bu yanıt, Visual Studio 2017'deki sorunu çözdü. Yine de, bir .config dosyası oluşturulurken DotNetConfig.xsd'nin neden varsayılan olarak kullanılmadığını anlamıyorum.
Gael

Ramakrishna sen da adamım! Mükemmel çalıştı. Uygulama hala derliyor ancak can sıkıcı uyarı mesajı artık yok.
puffgroovy

Bu işe yarıyor, çözümümde fark ettiğim daha fazla bilgi, .net sürüm 4.5 için DotNetConfig.xsd şeması varsayılan olarak seçildi, ancak .net sürüm 4.6 için DotNetConfig.xsd'nin bu yanıtta @Ramakrishna'nın önerdiği şekilde seçilmesi gerekiyor. Teşekkürler!
ZeeProgrammer

34
<configuration xmlns="schema URL">
   <!-- configuration settings -->
</configuration>

yukarıdaki gibi değişiklikler yapın ve deneyin


1
Uyarı gitti. Nazikçe teşekkür ederim. Bunu cevap olarak işaretlemeliyim.
EAE

Görünüşe göre konfigürasyon içindeki öğeler, Visual Studio 2012 Express Edition olan ortam tarafından okunmuyor.
EAE

@sepoto: xmlns ad alanını kaldırırsanız tekrar uyarı verir
Ravindra Bagale

1
App.config'i gönderime bütünüyle ekledim. Bazı nedenlerden dolayı, Visual Studio 2012 Express C # Ortamı ile düzgün çalışmasını sağlayamadım. Yukarıdaki çözümünüzü denedim ancak daha sonra konfigürasyonun içindeki öğeler için uyarılar aldım, böylece işler tartışmalı hale geldi. Yardımın için çok minnettarım ama henüz bir cevap olduğuna inanmıyorum.
EAE

1
Bir xmlns belirterek, (değer herhangi bir şey olabilir): Bu Yanıt kısmen doğru uyarı için configurationkaybolana ancak bir bilgi mesajı için verilir configurationve her alt öğesi için. Xmlns, tüm öğeleri tanımlayan gerçek bir DTD'yi gösteriyorsa, bu mesajlar da kaybolmalıdır.
Mike C

6

Yapmam gerekiyordu -> XML menüsüne gidin (visual studio üst menü öğesi) şemaları seçin ve DotNetConfig.xsd'yi seçin VE RazorCustomSchema.xsd AND EntityFrameworkConfig_6_1_0.xsd


1

Bir xaml projesi üzerinde çalışırken otomatik olarak oluşturulmuş bir xml dosyasının içinde bu uyarı açılır penceresini aldım.

Hata Ayıklama -> Temiz Çözüm ve Hata Ayıklama -> Yeniden Oluşturma Çözümü kullanmak sorunu çözdü. Şemalarla süslenmeden önce bunu denemek isteyebilirsiniz.


0

Visual Studio 2013 Express Edition, DotNetConfig.xsd ( https://connect.microsoft.com/VisualStudio/feedback/details/817322/dotnetconfig-xsd-files-not-present-in-vs-2013-express-for- eksik masaüstü ).

Öyleyse VS 2013 Express'teki uyarıdan kurtulmak için:

Uyarı gitmiş olmalı.



0

Sürücümde daha az yer vardı ve bu da uygulama çözümümün eksik yüklenmesine neden olabilirdi. Bu "konfigürasyon-elemanı-beyan edilmedi" sorunu, sürücümde biraz alan yarattıktan sonra çözüldü.


0

Ben de aynı uyarıyı aldım. Bir süre düşündükten sonra SQL (MS SQL) ile çalışırken hatamın farkına vardım.

Warning: the 'configuration' element is not declared

C # kullanma

App.Config kodu:

<connectionStrings>
    <add name="dbx" connectionString="Data Source=ServerNameHere;Initial Catalog=DatabaseNameHere;Integrated Security=True" providerName="System.Data.SqlClient"/>
</connectionStrings>

* Bu, connectionStrings'deki veritabanı adını çağırıyor, SQL kodumu bir uygulama olarak taktığımda her zaman veritabanı adını, şemayı ve ardından tabloyu kullanıyorum. Bu uygulama, yeni başlayan biri olduğum için Visual Studio'da pek iyi uygulanmadı. Db adını SQL sözdizimimden kaldırdım ve yalnızca şemadan, veri tablosundan çağırdım. Bu benim için sorunu çözdü.

Form.CS:

 using (SqlCommand cmd = new SqlCommand("SELECT * FROM [DatabaseName].[Schema].[TableName] WHERE [MEPeriod] = '2020-06-01'", con))

Şu şekilde güncellendi:

using (SqlCommand cmd = new SqlCommand("SELECT * FROM [Schema].[TableName] WHERE [MEPeriod] = '2020-06-01'", con))

Bu benim için çalıştı, umarım bu faydalı bulunmuştur.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.