2011-11-03 2 views
6

나는 이것에 너무 혼란 스럽다. 프로젝트를 게시 할 때 실제 SQL Server를 개발하고 사용할 때 데스크톱에서 SQL Server를 사용하고 싶습니다. Visual Studio 2010에서 변환 작업을하고 있습니다.게시 할 때 "일치 속성 이름 없음"오류가 발생하는 이유는 무엇입니까?

프로젝트를 게시하려고 할 때 "일치 속성 이름이 없습니다"라는 메시지가 나타납니다.

내 Web.config 파일에는 다음이 포함

<connectionStrings> 
    <add name="EFDbContext" 
     connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=db" 
      providerName="System.Data.SqlClient" 
      xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> 
</connectionStrings> 

<system.web> 
    <compilation xdt:Transform="RemoveAttributes(debug)" /> 
    <sessionState mode="SQLServer" 
     sqlConnectionString="Server=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=ASPState;Application Name=app" 
     timeout="20" allowCustomSqlDatabase="true" 
     xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> 
</system.web> 

아무것도 내가이 온라인으로보고하고있다 : 지금, 내 Web.Release.config 파일이 포함되어 있으므로

<connectionStrings> 
    <add name="EFDbContext" connectionString="Data Source=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=db" providerName="System.Data.SqlClient"/> 
</connectionStrings> 

<system.web> 
    <sessionState mode="SQLServer" sqlConnectionString="Server=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=ASPState;Application Name=eGov" timeout="20" allowCustomSqlDatabase="true" /> 
</system.web> 

나는 아직 그것을 테스트입니다 더 혼란 스러울뿐입니다. 날 데려가는 데 도움이 필요 하신가요?

답변

5

Doh! 문제는 sessionState 섹션에 있습니다. 그것은해야한다 :

<system.web> 
    <sessionState mode="SQLServer" 
     sqlConnectionString="Server=.\SQLEXPRESS;Integrated Security=SSPI;Initial Catalog=ASPState;Application Name=app" 
     timeout="20" allowCustomSqlDatabase="true" 
     xdt:Transform="SetAttributes" xdt:Locator="XPath(configuration/system.web/sessionState)" /> 
</system.web> 
11

xdt:Locator="Match(name)이름 태그를 사용하여 대체 할 노드를 일치하는 시스템을 의미한다. 이름이 인 경우에는 실패합니다. 이 변환 유형을 사용하려면 고유 한 속성이 있어야합니다.

2

Match (name)에서 "name"을 사용하는 것은 다음과 같은 일반적인 구성 설정을위한 것입니다. 이 경우 키는 "이름"입니다.

<add name="errorAddress" email="[email protected]" xdt:Transform="SetAttributes" xdt:Locator="Match(name)" /> 

당신의 설정에서 키가 뭔가 다른 경우, 즉 당신이 사용해야 할 것입니다 :

<add token="UserToken" value="23jkl2klk2j3kja9d8f" xdt:Transform="SetAttributes" xdt:Locator="Match(token)"/>