お知らせ:BlogEngine.Net 1.6.2.16を導入してみました

おもにPSUぶろぐに続き、こちらも、BlogEngine.Net 1.6.2.16に更新してみました。

おもにPSUぶろぐではあまり書きませんでしたが、いつも通り、こちらでは技術的なことも少々~

1.6.2.1からの更新は、1.6.2.16のソースに、1.6.2.1のApp_Dataフォルダを丸ごと上書きで行けました。

少し前から少々変わっているところもあって、オプションで入れているソースコードや、私が公開しているRSS1.0/2.0両対応のブログロールも、コンパイルエラーではじかれてしまったりします。

なので、ASP.NET 4.0対応も含め、改めて、記載してみようかと思います。

1.ASP.NET 4.0に変更してみる

まずは、ソースコードをDLします。
Visual Studio 2010または、Visual WebDeveloper Express 2010でプロジェクトを開きまして、BlogEngine.Coreプロジェクトのプロパティを開きます。
アプリケーションのプロパティで、対象のフレームワークを.Net Framework 4.0に変更します。

このままですと、BlogEngine.Coreプロジェクトはコンパイルエラーとなります。
これは、ASP.NET 4.0で、Membership関連の名前空間が変更されてしまったからですね~

というわけで、BlogEngine.Coreプロジェクトの参照設定を右クリックして、参照の追加を選択します。

blogengine.core_aspnet4_addReference

System.Web.ApplicationServicesを選択して、追加します。

次に、Webサイトのプロジェクトのプロパティを開き、ビルドタブの対象のフレームワークを.Net Framework 4.0に変更します。

このままですと、ASP.NET 4.0のセキュリティ関連の更新で、TinyMCE関連ではじかれますので、Web.Configを更新します。

<httpRuntime enableVersionHeader="false" useFullyQualifiedRedirectUrl="true" maxRequestLength="16384" executionTimeout="3600" requestLengthDiskThreshold="16384"/>

このような個所がありますので、httpRuntimeのタグの最後に、

<httpRuntime enableVersionHeader="false" useFullyQualifiedRedirectUrl="true" maxRequestLength="16384" executionTimeout="3600" requestLengthDiskThreshold="16384" requestValidationMode="2.0"/>

requestValidationMode=”2.0”

と追加することで、2.0互換モードとなり、正常に動作するかと思います。

2.既存のコードの修正

1.6.2.16ソースをそのまま使うなら問題はありませんが、プラグインとして、App_Code\Controlsやwidgetsなどに追加していると、一部のコードでコンパイルエラーが発生する場合がありました。

ぶりちゃんが遭遇したエラーは、ExtensionSettingsが見つからないと怒られたことです。

たぶん、名前空間の変更でそうなったのでしょうから、エラーが出るコードにUsingを追加してあげれば解決します。

using BlogEngine.Core.Web.Extensions;

このように追加することで、コンパイルエラーは解消されると思います。

そして、私が公開している、RSS1.0/2.0対応のblogroll_rss12ですが、導入した場合、blogRequestが見つかりませんというようなエラーが発生するかと思います。

こちらについても名前が変更になったようですので、対象ソース内のblogRequestをBlogRequestに置き換えて頂ければ、エラーは解消されるかと思います。

現在はソースコードリリース段階ですので、公開しているセットは、まだ更新する予定はありません。
お手数ですが、各自で置き換えをお願いいたします。

また、rturさんが公開されているSyntaxHighlighter for BlogEngine.netについては、admin\TinyMCE.ascxとadmin\Extension Manager\Setting.ascx.csを使用しなければ、正常にコンパイルできるようです。

3.管理機能(TinyMCE)のIE9 Beta1対応?

BlogEngine.NET 1.6.2.16に含まれているTinyMCEは、古いソースなので、残念ながら、IE9 Beta1ですと、JavaScriptエラーが発生して、TinyMCEが正常に動作しません。
(IE6互換モードにすれば動くようです)

まあ、時間もたっていますし、もう対応されたかなと思い、TinyMCEのサイトに行ってみたところ、3.3.9.2がリリースされていまして、更新履歴にIE9 Beta1対応がちらほらのってるようです。

そこで、ダウンロードしてきまして、入れ替えてみました。
TinyMCE3.9.2.2のJavaScriptフォルダの中身すべてを、BlogEngine.Netプロジェクトのeditorsフォルダ内にすべて上書きするだけで、更新できるようです。

これで、IE9 Beta1でも、管理のページやブログが正常に動作するようになりました~^^

ちょっと長くなってしまいましたが、おもにPSUぶろぐと本ブログに関しては、このような変更で更新しています。

コメントを書く

Month List