Subversion からチェックアウトした後、EPiServer Web アプリケーションのコンパイルに問題があります。
このエラーが発生します
コンパイラ エラー メッセージ: CS1519: 無効なトークン '、' クラス、構造体、またはインターフェイス メンバー宣言
ソース エラー:
Line 116: }
Line 117:
Line 118: public virtual EPiServer.Personalization.SubscriptionInfo, EPiServerSubscription Info {
Line 119: get {
Line 120: return ((EPiServer.Personalization.SubscriptionInfo, EPiServer)this.GetPropertyValue("SubscriptionInfo")));
ソースファイル:
c:\Windows\Microsoft.NET\Framework\v2.0.50727\Temporary ASP.NET Files\root\956e6fc5\66c11597\App_Code.9_fan95p.0.cs Line: 118
エラーからわかるように、このファイルは "Temporary ASP.NET Files" フォルダーにあり、ビルド プロセスの一部です。これは私のソースコードではありません。
Web構成に型参照が含まれていることを示唆するこの質問を見ました
「Namespace.ClassName, AssemblyName」の形式で指定します。
だから私は自分のweb.configに入り、セクションを変更しました
...
<profile ...>
<properties>
...
<add name="SubscriptionInfo"
type="EPiServer.Personalization.SubscriptionInfo, EPiServer"
provider="SqlProfile" />
...
に
...
<profile ...>
<properties>
...
<add name="SubscriptionInfo"
type="EPiServer.Personalization.SubscriptionInfo"
provider="SqlProfile" />
...
これにより、上記の即時エラーが削除されましたが、別のタイプで同じエラーが発生しました。そこで、「 Namespace.TypeName, AssemblyName 」形式のすべての型を調べて、「 , AssemblyName」を削除しました。これにより、すべての CS1519 エラーが停止しましたが、CS0234 が発生し始めました。
コンパイラ エラー メッセージ: CS0234: タイプまたは名前空間名 'Personalization' が名前空間 'EPiServer' に存在しません (アセンブリ参照がありませんか?)
ソース エラー:
116 行目: }
117 行目:
118 行目: public virtual EPiServer.Personalization.SubscriptionInfo SubscriptionInfo {
119 行目: get {
120 行目: return ((EPiServer.Personalization.SubscriptionInfo)(this.GetPropertyValue("SubscriptionInfo"))) ;
VisualStudio 2008、Episerver 5.2.372.7、VisualSVN 1.7.2、および Debian ボックスを、svn バージョン 1.4.2 (r22196) を実行する Subversion リポジトリとして使用しています。
アプリケーションが正常にビルドされたので、レポにチェックインしました。同じコンピューターの別の場所にチェックアウトして F5 キーを押すと、これらのエラーが表示され始めます。
誰にも提案はありますか。
更新: ご返信ありがとうございます。devio、Zhaph。
<compilation>
セクションの web.config に以下を追加しました。
<assemblies>
<add assembly="System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add assembly="EPiServer, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.BaseLibrary, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Configuration, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Enterprise, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Implementation, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Lucene, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Scheduler, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Web.WebControls, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.WorkflowFoundation, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.Wsrp, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
<add assembly="EPiServer.XForms, Version=5.2.375.7, Culture=neutral, PublicKeyToken=8fe83dea738b45b7"/>
</assemblies>
以前は<assemblies>
セクションがありませんでした。
プロジェクトの参照には、これらの DLL がすべて含まれています。すべての EPiServer DLL は GAC にあります。新しい (機能していない) チェックアウトは、元のプロジェクトが作成されたのと同じマシン上にあります。
私は今得ます:
パーサー エラー メッセージ: ファイルまたはアセンブリ 'EPiServer.Scheduler' またはその依存関係の 1 つを読み込めませんでした。システムは、指定されたファイルを見つけることができません。
(C:\Projects\web\ProvidentPPC2\ProvidentPPC\web.config 行 301)
ソース エラー:
Line 299: <add name="InitializationModule" type="EPiServer.Web.InitializationModule" />
Line 300: <!--<add name="BasicAuthentication" type="EPiServer.Security.BasicAuthentication, EPiServer" />-->
Line 301: <add name="Initializer" type="EPiServer.Scheduler.Initializer, EPiServer.Scheduler" />
Line 302: <add name="WorkflowRuntime" type="EPiServer.WorkflowFoundation.WorkflowSystem" />
Line 303: <add name="UrlRewriteModule" type="EPiServer.Web.UrlRewriteModule" />
ソースファイル:
C:\Projects\web\ProvidentPPC2\ProvidentPPC\web.config
Line: 301
私が言うように、EPiServer.Scheduler は私の GAC にあり、参照としてプロジェクトに追加されています。これ以上のアイデアは大歓迎です。