为什么我收到“模型”不包含“oTitle”CS1061 Umbraco (12.3.4) 的定义?

问题描述 投票:0回答:1

我正在开发 umbraco 项目 (12.3.4),并安装了 OskiStarterKit(3.0.2)

我使用模板创建了一个 Documenttype 并添加了一些组合,并在其中放入了一些内容,之后我还生成了模型。

这是我的产品.cshtml

@using Umbraco.Cms.Web.Common.PublishedModels;
@inherits Umbraco.Cms.Web.Common.Views.UmbracoViewPage<ContentModels.Product>
@using ContentModels = Umbraco.Cms.Web.Common.PublishedModels;
@{
    Layout = null;
}

    <!DOCTYPE html>
<html>
<head>
    <title>@Model.oTitle</title>
</head>

并且属性名称“oTitle”与生成的已发布产品模型上的相同

[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Umbraco.ModelsBuilder.Embedded", "12.3.4+4a0d364")]
        [global::System.Diagnostics.CodeAnalysis.MaybeNull]
        [ImplementPropertyType("oTitle")]
        public virtual string OTitle => global::Umbraco.Cms.Web.Common.PublishedModels.OCardsContainer.GetOTitle(this, _publishedValueFallback);

生成模型的命名空间是

namespace Umbraco.Cms.Web.Common.PublishedModels
一切似乎都很好,但由于某种原因我收到此错误:

“Product”不包含“oTitle”的定义,并且找不到接受“Product”类型的第一个参数的可访问扩展方法“oTitle”(您是否缺少 using 指令或程序集引用?)

可能是什么问题?

c# asp.net .net umbraco
1个回答
0
投票

oTitle 是属性的别名,但是您的模型属性使用 PascalCase 而不是 CamelCase 生成:-) 所以您应该可以使用 @Model.OTitle 来代替?

© www.soinside.com 2019 - 2024. All rights reserved.