次のように独自のカスタム構成セクションを作成しようとしています。
web.config ファイル内のコード:
<configuration>
<configSections>
<!-- For more information on Entity Framework configuration, visit http://go.microsoft.com/fwlink/?LinkID=237468 -->
<section name="entityFramework" type="System.Data.Entity.Internal.ConfigFile.EntityFrameworkSection, EntityFramework, Version=6.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" requirePermission="false" />
<section name="customConfigurationSection" type="CustomConfigurationSectionRepro.ConfigHandlers.CustomConfigurationSection" allowLocation="true" allowDefinition="Everywhere" />
</configSections>
<customConfigurationSection fileName="\Configs\customconfig.config" />
....
....
</configuration>
カスタム構成ハンドラー ファイル内のコード:
namespace CustomConfigurationSectionRepro.ConfigHandlers
{
public class CustomConfigurationSection : ConfigurationSection
{
[ConfigurationProperty("fileName", IsRequired = false)]
public string FileName
{
get
{
return (string)this["fileName"];
}
set
{
this["fileName"] = value;
}
}
}
}
私の Web アプリは、Visual Studio MCV テンプレートの標準の mvc Web アプリです。IIS Express を使用して開発環境で実行すると、エラーが発生し続けます。
Could not load file or assembly 'CustomConfigurationSectionRepro' or one of its dependencies. An attempt was made to load a program with an incorrect format.
=== Pre-bind state information ===
LOG: DisplayName = CustomConfigurationSectionRepro
(Partial)
WRN: Partial binding information was supplied for an assembly:
WRN: Assembly Name: CustomConfigurationSectionRepro | Domain ID: 2
WRN: A partial bind occurs when only part of the assembly display name is provided.
WRN: This might result in the binder loading an incorrect assembly.
WRN: It is recommended to provide a fully specified textual identity for the assembly,
WRN: that consists of the simple name, version, culture, and public key token.
WRN: See whitepaper http://go.microsoft.com/fwlink/?LinkId=109270 for more information and common solutions to this issue.
LOG: Appbase = file:///C:/Users/vtran/Documents/Visual Studio 2015/Projects/Playground/CustomConfigurationSectionRepro/
LOG: Initial PrivatePath = C:\Users\vtran\Documents\Visual Studio 2015\Projects\Playground\CustomConfigurationSectionRepro\bin
Calling assembly : (Unknown).
私は周りを探していましたが、解決策を見つけることができませんでした。名前空間とアセンブリ名は正しいようです。CustomConfigurationSectionRepro.dll も bin フォルダーに存在します。
どんな助けでも本当にありがたいです。
更新: ホスト サーバーを IIS Express からローカル IIS に変更すると、アプリケーションは問題なく動作しました。理由はまだわかりません。