umbraco.decimal不显示负值的问题

umbraco.decimal不显示负值的问题,umbraco,umbraco7,Umbraco,Umbraco7,我们正在使用Umbraco云上的Umbraco 7.5.x。我们有一个带有Umbraco.Decimal数据类型的自定义文档类型 正在存储正确的值,因为我们可以从后台编辑它们。但当我们试图显示这些值时,只有高于零的值才能正确显示。不显示负值(例如-0.75) 显示此数据类型的值以显示所有值的正确方式是什么 我们上面的用例是,我们有一个显示股票价格值的节点,有时可能是负数。这些值存储在Umbraco.decimal字段中。显示的正值没有任何问题。任何负值都显示为零 例如,在我们的视图中,我们获取特

我们正在使用Umbraco云上的Umbraco 7.5.x。我们有一个带有Umbraco.Decimal数据类型的自定义文档类型

正在存储正确的值,因为我们可以从后台编辑它们。但当我们试图显示这些值时,只有高于零的值才能正确显示。不显示负值(例如-0.75)

显示此数据类型的值以显示所有值的正确方式是什么

我们上面的用例是,我们有一个显示股票价格值的节点,有时可能是负数。这些值存储在Umbraco.decimal字段中。显示的正值没有任何问题。任何负值都显示为零

例如,在我们的视图中,我们获取特定节点的值,并从字段中显示其值:

@{
var lastStockValues = Umbraco.Content(123).Children.Last();
}    
<div>@((lastStockValues.stockdelta*100).ToString("0.##")) % </div>
@{
var lastStockValues=Umbraco.Content(123.Children.Last();
}    
@((lastStockValues.stockdelta*100).ToString(“0.###”)%)

谢谢

我强烈建议使用类型化模型,而不是动态模型。通过这种方式,您可以确保您的类型是正确的:

@{
    var lastStockValuesNode = Umbraco.TypedContent(123).Children().Last();
}
<div>@((lastStockValuesNode.GetPropertyValue<decimal>("stockdelta") * 100).ToString("0.##"))</div>
@{
var lastStockValuesNode=Umbraco.TypedContent(123.Children().Last();
}
@((lastStockValuesNode.GetPropertyValue(“stockdelta”)*100.ToString(“0.##”)
在这种情况下,
lastStockValuesNode
的类型为
IPublishedContent
,表示Umbraco中的页面/节点

然后可以使用方法
.GetPropertyValue(别名)
。在本例中,我们将强制转换为键入
decimal

如果动态类型将十进制转换为错误的类型,这可能会解决您的问题


文档:

请发布您迄今为止尝试过的代码。你期望代码做什么?它实际上在做什么?谢谢,我已经更新了信息。希望这有帮助!