我有一个serach页面,早期是SQL DB上的功能,但现在我们将后退移至SharePoint,我试图根据用户从下拉框中选择构建查询。动态创建CAML查询
现有的SQL查询是:
string SQLquery "Select companyname,phone,email from Tab where Approved = 1"
If (country.selectedindex != "")
{
SQLquery += "AND (country LIKE '%" + country.SelectedValue + "%')"
}
If (functional.selectedindex != "")
{
SQL += "AND (country LIKE '%" + country.SelectedValue + "%')"
}
If (state.selectedindex != "")
{
SQL += "AND (state LIKE '%" + state.SelectedValue + "%') OR (businessareaState like '%" + state.SelectedValue + "%'))"
}
这很容易,但我必须在创建基于用户选择CAML相同的查询形成下拉列表。 不知何故,我无法给它一个动态的形状,因为一旦你添加了标准,它的结构就会在CAML中完全改变。
帮助将不胜感激。
SharePoint 2010或MOSS 2007?如果2010年你看过linq?我认为这会更简单。 – Shoban
作为LINQ到CAML的+1可以很好,但它在发生在场景中的魔法中有陷阱http://www.sharepointblues.com/2010/09/08/linq-to-sharepoint-performance-pitfalls/ – Ryan
我还没有,我现在肯定会这样做,谢谢你的及时回复:) – Vishal