Хорошо, кто-нибудь знает, как/если вы можете клонировать представление SharePoint, а затем добавлять его в список. Перегрузки SPViewCollection.Add не будут иметь экземпляр SPView, и я не смог найти документацию, которая указывала бы, как это сделать.Добавление клонированного SPView в список
Например, я хотел бы сделать это по существу:
var myList = SPContext.Current.Web.List;//or something similar
var baseView = myList.DefaultView;
var myNewView = baseView.Clone("my view", base.RowLimit, base.Paged, false);
myNewView.Query = "<Where>......</Where>";
myList.Views.Add(myNewView);//this overload doesn't exist!
Конечный результат я хочу новый взгляд копировать поведение первоначальный вид за исключением измененного запроса. Я готов пойти другим путем, но я не уверен, что это такое. (Я заметил свойство BaseViewID, которое может помочь, но оно доступно только для чтения).
Любое предложение или подсказки будут оценены.
@ccomet, Спасибо, это именно то, что я искал. Мне никогда не приходилось проверять свойства SPView для Clone. –
@Grace Примечание. Я попытался использовать SPView.Clone(), как описано выше, и определение вида отображается без отображения отображаемых элементов списка. Только после того, как я нажму «ok» в «Modify View», появятся записи. Не могли бы вы узнать, почему это может произойти? благодаря –