いろいろまた・・・ねぇ^^;
その4で、System.Web.Mobile.dllが見つかりません・・・を書きました。
とりあえずは、Mobileの機種判別を行うために、Codeplex上のMDBFをダウンロードしてきて、App_Browsers/Devicesに投入~
もちろん、IIS上のASP.NETでは認識され、MobileDeviceManufacturerや、MobileDeviceModel、SupportIModeSymbols(!)も正常に動き、いろいろ判別できるのですが・・・mono上だとさっぱり~
・・・とりあえず、ダンプしてみる・・・ということで、
Request.Browser.ToString()やら、その他プロパティをみると・・・
ASP.NET System.Web.Mobile.MobileCapabilities
mono System.Web.UI.HttpCapabilities
・・・
Mobileがごっそり抜けている時点で気付くべきでした><
・・・いや、まあ、希望をもちたかったんだい(無理無理
さて、他の方法は~ということで、DeviceUpdateでキャリアくらいは判別されるはずだよなぁ・・・と思い、
なんで?ということで、調べてみると、monoには標準で入ってないと^^;
まあ、しゃーないということで、DeviceUpdateのファイルをApp_Browsersフォルダに入れてみる。
さっそくHTTP500~(-。-)y-゜゜゜
Defaltが二重定義されてるよ・・・(ぇ
monoにはCompat.browserというファイルがありまして、そちらに定義されてたんですな・・・まあ、IE,Opera,Firefox,ネスケに、Safaliだけですがね^^;
とりあえず、mono上のCompat.browserをリネームして無効にし、動作させる・・・
やっぱりHTTP500(-_-メ)
CHtmlTextWriterでプロパティ Keyがみつかりません
ちょっとまてい(笑)
しかも表示されてるHexがオール0って、NullReference^^;
プロファイルのアダプタをHtml32TextWriterに書き換えてみると、エラーは出ず・・・
monoのClassStatusみても、チェックマーク・・・つまり実装済
・・・これって、CHtmlTextWriterの不具合だよねぇ^^;
まあ、ふつー.NETコントロールをCHTMLでレンダリングしようとは思わないから・・でしょうけど・・・
・・・ASP.NETはふつーにうごくぞ(号泣
それだけではなく・・・プロファイルではJavaScriptが使用不可(ECMAScriptVersion =0.0)なのに、無条件でJavaScriptが書かれてしまうとか、Cookieも使えないのに、自動認識してくれないとか・・・
mono・・・つかれたよ;;
まあ、愚痴になってしまってますが・・・またがんばらなきゃ~
今日はくたくたになってしまったので・・・さっさと寝ます><