Visual Studio 2013 の新しい Browser Link 機能を試してみました。ただし、「Web フォーム」ページで「デザイン モード」機能を動作させることができません。MVC ページを閲覧しているときに問題なく動作します。ただし、プロジェクトに Web フォームを追加するとすぐに、ブラウザーに次のようなアラートが表示されます。
「デザイン モードは ASP.NET Web フォームでは機能しません」。
ページを調べて更新することもできます (Browser Link ダッシュボードから)。
ブラウザに挿入された JavaScript コードをデバッグして、どこで発生しているかを確認してみました。F12 開発者をオンにして「デザイン モード」を検索すると、それが js ファイルに表示されます (パスは「/ foo /browserlink」のようになります)。
map = browserLink.sourceMapping.getCompleteRange(target);
if (map && map.sourcePath) {
if (isValidFile(map.sourcePath.toLowerCase())) {
current = target;
$(target).addClass(selectedClass);
browserLink.sourceMapping.selectCompleteRange(current);
}
else {
enableDesignMode(false);
alert("Design Mode doesn't work for ASP.NET Web Forms");
}
}
そして、「isValidFile」には次の本体があります
function isValidFile(sourcePath) {
var exts = [".master", ".aspx", ".ascx"];
var index = sourcePath.lastIndexOf(".");
var extension = sourcePath.substring(index);
for (var i = 0; i < exts.length; i++) {
if (exts[i] === extension)
return false;
}
return true;
}
Web フォーム アプリケーションでこれを機能させるにはどうすればよいですか?