DotNetNuke v6和Xmod Pro中的简单搜索,发布和结果页面

时间:2012-07-07 19:44:58

标签: dotnetnuke

我正在努力使用Xmod Pro 4.x.我需要做的就是创建一个简单的表单,将3个文本字段作为参数传递给第二个页面,并使用试图接收参数的xmod模板。表单是通过xmod设计器自动构建的,模板显然是自定义的。

当我尝试发布到页面(将POST重定向到“搜索结果”页面)时,xmod模板会抛出此错误:

MESSAGE: 必须声明标量变量“@Part”。

这是我的ListDataSource片段:

<ListDataSource CommandText="SELECT [Id], 
[PartNumber] 
,[Manufacturer] 
,[Condition] 
,[Description] 
,[Location] 
,[Quantity] 
, 
(CASE WHEN 
(SELECT TOP 1 ThumbnailUrl FROM PKT_PartImage pi WHERE pi.PartNumber = p.PartNumber)     
IS NULL THEN 
'no-photo.png' ELSE 
(SELECT TOP 1 ThumbnailUrl FROM PKT_PartImage pi WHERE pi.PartNumber = p.PartNumber) 
END) AS ThumbnailUrl 
, 
(CASE WHEN 
(SELECT TOP 1 ThumbnailUrl FROM PKT_PartImage pi WHERE pi.PartNumber = p.PartNumber)     IS NULL THEN 
'_default' ELSE 
[PartNumber] END) AS ThumbnailPath 
FROM [PKT_Part] p WHERE [PartNumber] LIKE '%' + @Part + '%' OR [Manufacturer] LIKE '%'     + @Mfr + '%' 
OR [PartNumber] LIKE '%' + @Key + '%' OR [Manufacturer] LIKE '%' + @Key + '%' OR     [Condition] LIKE '%' + @Key + '%' 
OR [Description] LIKE '%' + @Key + '%' OR [Location] LIKE '%' + @Key + '%'"> 
<Parameter Name="Part" Value="[[Url:part]]" /> 
<Parameter Name="Mfr" Value="[[Url:mfr]]" /> 
<Parameter Name="Key" Value="[[Url:key]]" /> 
</ListDataSource> 

基本上,我收到的错误是它不知道如何处理传递的参数。我正在使用的搜索表单是由xmod pro自动生成的,并且正在对结果页面执行“重定向POST”,这是相应的xmod pro模块抛出错误的位置。

您可以在此处看到小型搜索表单(http://pickett.clients.solid-code.com/Home.aspx),并且结果页面会显示错误。

2 个答案:

答案 0 :(得分:0)

您需要使用重定向method="get"而不是POST

答案 1 :(得分:0)

尝试将值参数周围的引号更改为单引号而不是双引号。