在 Weblog 中尝试 post 评论时出现字符串结尾预期错误
End of string expected error when trying to post comment in Weblog
我正在尝试解决为使用 Weblog Sitecore 模块的博客发表评论的问题。据我所知,如果博客条目 url 包含破折号(即 http://[domain.org]/blog/2016/december/test-2-entry),那么我会收到 "End of string expected at line [#]" 错误。如果博客条目 url 不包含破折号,则评论表单可以正常工作。
<replace mode="on" find="-" replaceWith="_"/>
还尝试用空 space 替换破折号。这两种解决方案都不起作用,因为我仍然收到错误。
我可以更改 Web.config 中的其他设置以转义 url 中的破折号吗?我读过用# 符号括起虚线 url 文本是有效的,但我希望能够自动执行此操作,而不是让用户返回并重命名他们的所有博客条目。
这里是错误的截图供参考:
我没有体验过博客模块,但是对于您遇到的问题,您应该使用 #
转义破折号。请看下面的代码片段:
public string EscapePath(string path)
{
string[] joints = Regex.Split(path, "/");
string output = string.Empty;
for (int index = 0; index < joints.Length; index++)
{
string joint = joints[index];
if (!string.IsNullOrEmpty(joint))
output += string.Format("#{0}#", joint);
if (index != joints.Length - 1)
output += "/";
}
return output;
}
参考:https://github.com/WeTeam/WeBlog/issues/52
可以找到有关在查询中转义破折号的更多信息here
更新
您应该在发表评论之前调用此方法以转义破折号。您也可以从 here 下载 dll 并在您的解决方案中使用它
我正在尝试解决为使用 Weblog Sitecore 模块的博客发表评论的问题。据我所知,如果博客条目 url 包含破折号(即 http://[domain.org]/blog/2016/december/test-2-entry),那么我会收到 "End of string expected at line [#]" 错误。如果博客条目 url 不包含破折号,则评论表单可以正常工作。
<replace mode="on" find="-" replaceWith="_"/>
还尝试用空 space 替换破折号。这两种解决方案都不起作用,因为我仍然收到错误。
我可以更改 Web.config 中的其他设置以转义 url 中的破折号吗?我读过用# 符号括起虚线 url 文本是有效的,但我希望能够自动执行此操作,而不是让用户返回并重命名他们的所有博客条目。
这里是错误的截图供参考:
我没有体验过博客模块,但是对于您遇到的问题,您应该使用 #
转义破折号。请看下面的代码片段:
public string EscapePath(string path)
{
string[] joints = Regex.Split(path, "/");
string output = string.Empty;
for (int index = 0; index < joints.Length; index++)
{
string joint = joints[index];
if (!string.IsNullOrEmpty(joint))
output += string.Format("#{0}#", joint);
if (index != joints.Length - 1)
output += "/";
}
return output;
}
参考:https://github.com/WeTeam/WeBlog/issues/52
可以找到有关在查询中转义破折号的更多信息here
更新
您应该在发表评论之前调用此方法以转义破折号。您也可以从 here 下载 dll 并在您的解决方案中使用它