如何在 2sxc 类型代码中使用查询

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

所以我尝试在 2sxc 18 中使用新奇的 TypedCode 东西。 但我想从查询中获取一些数据。 所以我第一次做了类似的事情:

      var query = App.Query["EventDetailsByIds"];
      query.Params("eventid",contactFormRequest["eventid"].ToString() );
      query.Params("dateid",contactFormRequest["dateid"].ToString() );
      var eventobject = AsList(query["EventInfo"]).First();
      var dateobject = AsList(query["DateInfo"]).First();

这将在 2sxc 18 中给出错误。 如何调用查询并向调用添加参数?

dotnetnuke 2sxc
1个回答
0
投票

有文档和示例(教程)说明了这一点。有一种新方法,

.GetQuery()
,它适用于强类型工具链。最简单的示例,假设您的查询返回与现有内容类型匹配的字段:

// Get all the products from a query (specific stream)
var myParams = new { CateogryId = catId };
var prodsInCategory = AsList<Product>(App
  .GetQuery("CategoryDetails", parameters: myParams)
    .GetStream("Products")
);

如您所见,

AsList<Product>()
正在将您的类型化结果转换为 StronglyTyped。

这是最新教程中使用 Params 的 GetQuery() 的附加示例,向下滚动到最后一个示例。
https://2sxc.org/dnn-tutorials/en/razor/tut/datasources-use

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