【问题标题】:Sections must only appear once per config file. See the help topic <location> for exceptions.Why?每个配置文件中的部分只能出现一次。有关例外情况,请参阅帮助主题 <location>。为什么?
【发布时间】:2011-09-16 10:29:07
【问题描述】:

配置错误 说明:处理服务此请求所需的配置文件期间发生错误。请查看下面的具体错误详细信息并适当地修改您的配置文件。

<configuration>

  <system.net>
    <mailSettings>
      <smtp from="makovetskiyd@yahoo.co.uk">
        <network host="smtp.gmail.com" enableSsl="true" defaultCredentials="false" port="587" userName="****" password="****"/>
      </smtp>
    </mailSettings>
  </system.net>

  <connectionStrings>
    <clear/>
<add name="SqlState" connectionString="Data Source=localhost;DataBase=AnyNameOfServerState;Integrated Security=True" providerName="System.Data.SqlClient"/>
<add name="YourGuruDB" connectionString="Data Source=DIMA-00AA1DA557;Initial Catalog=model;Integrated Security=True"/>
<add name="modelConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename='D:\Documents and Settings\Dima\My Documents\Visual Studio 2010\WebSites\WebSite10\App_Data\ASPNETDB.MDF';Integrated Security=True;User Instance=True;Trusted_Connection=Yes;" providerName="System.Data.SqlClient"/>
  </connectionStrings>


  <system.web>

<sessionState mode="SQLServer" sqlConnectionString="SqlState" allowCustomSqlDatabase="true" cookieless="false" timeout="20"/>
<compilation debug="true"/>

<authentication mode="Forms">
  <forms name=".MyCookie" loginUrl="~/Registration.aspx" protection="All" timeout="30" path="/">
    <credentials passwordFormat="MD5">
      <user name="****" password="****"/>
    </credentials>
  </forms>
</authentication>

<authorization>
  <deny users="?"/>
  <allow users="*"/>
</authorization>

<roleManager enabled="true" defaultProvider="MyRoleProvider">
  <providers>
    <clear/>
    <add name="MyRoleProvider" applicationName="/" connectionStringName="modelConnectionString" type="System.Web.Security.SqlRoleProvider"/>
  </providers>
</roleManager>

<membership defaultProvider="MyMembershipProvider">
  <providers>
    <clear/>
    <add name="MyMembershipProvider" type="System.Web.Security.SqlMembershipProvider" connectionStringName="modelConnectionString" minRequiredPasswordLength="1" minRequiredNonalphanumericCharacters="0" enablePasswordReset="true" maxInvalidPasswordAttempts="1000" passwordAttemptWindow="4000" enablePasswordRetrieval="true" requiresUniqueEmail="false" passwordFormat="Encrypted" applicationName="/WebSite10"/>
  </providers>
</membership>

<machineKey validationKey="****" decryptionKey="****" validation="SHA1" decryption="AES"/>
<compilation debug="true" targetFramework="4.0">
  <assemblies>
    <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=****"/>
    <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=****"/>
    <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=****"/>
    <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=****"/>
  </assemblies>
</compilation>

【问题讨论】:

  • 第 49 行: //我明白了..这就是它所指向的地方

标签: asp.net configuration


【解决方案1】:

你有两个编译标签

<compilation debug="true"/> 

<compilation debug="true" targetFramework="4.0">   
    <assemblies>     
        <add assembly="System.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B03F5F7F11D50A3A"/>     
        <add assembly="System.Web.Extensions.Design, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>     
        <add assembly="System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>     
        <add assembly="System.Data.Linq, Version=4.0.0.0, Culture=neutral, PublicKeyToken=B77A5C561934E089"/>   
    </assemblies> 
</compilation> 

【讨论】:

  • 至于“WHY?”,是因为系统无法确定您打算使用哪一个,特别是如果他们指定了不同的设置。
【解决方案2】:

当您在配置文件中有两次编译元素时,会发生以下错误。只需取出一个或另一个。

好像有两个部分。

删除 &lt;compilation&gt;

离开 &lt;compilation debug="true" &gt;

【讨论】:

    【解决方案3】:

    我今天安装 Ajax 工具包后遇到了这个问题。如果您在通过 web.config 安装 ajax 工具包之前添加了自定义控件:

    <pages>
        <controls> 
                 <!--Your custom control class information-->      
                 <add tagPrefix=".." namespace="..."/>      
        </controls>
     </pages>
    

    在删除标签后将其与 ajaxToolkit 部分结合为:

    <pages>   
          <controls>
            <add tagPrefix="ajaxToolkit" assembly="AjaxControlToolkit" namespace="AjaxControlToolkit" />    
            <!--Your custom control class information-->
            <add tagPrefix="..." namespace="..." />
          </controls>
    </pages>
    

    【讨论】:

      猜你喜欢
      • 2019-09-02
      • 1970-01-01
      • 2014-01-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多