私は次のかみそりでビューを持っています...
foreach (var result in @Model.Results)
{
if (result.Location != null && result.Location.Lat != null && result.Location.Long != null)
{
<script type="text/javascript" language="javascript">
var MapDataObj = (function () {
mapDataObj = new Object();
mapDataObj.Lat = @result.Location.Lat;
mapDataObj.Long = @result.Location.Long;
mapDataObj.BasedInArea = 'True';
SearchMapDataProperties.searchResultsArray.push(mapDataObj);
return {
};
}());
</script>
}
しかし、私がそれを変更すると...
foreach (var result in @Model.Results)
{
if (result.Location != null && result.Location.Lat != null && result.Location.Long != null)
{
<script type="text/javascript" language="javascript">
var MapDataObj = (function () {
mapDataObj = new Object();
mapDataObj.Lat = result.Location.Lat;
mapDataObj.Long = result.Location.Long;
mapDataObj.BasedInArea = 'True';
SearchMapDataProperties.searchResultsArray.push(mapDataObj);
return {
};
}());
</script>
}
(result.Location オブジェクトから「@」記号を削除しました) result.Location で null 参照例外が発生します。
違いが本当に気になります。YSODを取得したため、明らかにまだC#として扱っています。その違いが何なのか、私にはさっぱり理解できません...
ピート