如何在视图中使用两个“ as”运算符

时间:2018-11-01 11:57:25

标签: asp.net-mvc razor

在我看来,我在少数地方有以下几行代码:

var validateAge = function(age) {
  person = age(); // <-- here ,age is not a function
  console.log(age);

}

这是我视图中的另一个地方。

var generateDataForScientist = function() {
  return {
    name: "Albert Einstein",
    age : function (){ return Math.floor(Math.random() * (100 - 1)) + 1 },
  };
};

Viewbag上的对象来自旧版代码(.NET 2.0),那时,他们使用Arraylist和Object作为大多数公司代码的标准。因此,为了使用它,我需要两次从视图包中投射对象。 该视图以前使用过foreach循环,但现在必须实现新的逻辑并 我需要使用带有迭代器的for循环,因为该逻辑仅在“ i”为奇数时发生。

问题是.cshtml仅将@((ViewBag.Contratos as ArrayList)[i] as OperacaoCredito).NomeProduto 识别为代码,而自动完成会忽略最后一部分@((ViewBag.Contratos as ArrayList)[i] as OperacaoCredito).NomeCliente 。因此,在渲染视图时,将其显示为纯文本(标题文本)。

enter image description here

0 个答案:

没有答案