У меня есть следующий код активации:«Активировать функции»: Ссылка на объект не указывает на экземпляр объекта
public override void FeatureActivated(SPFeatureReceiverProperties properties)
{
// Create a new list and populate it.
using (SPWeb web = properties.Feature.Parent as SPWeb)
{
web.Lists.Add("Projects", "Projects That are currently being worked on.", SPListTemplateType.GenericList);
web.Update();
// Add the new list and the new content.
SPList projectList = web.Lists["Projects"];
projectList.Fields.Add("Name", SPFieldType.Text, false);
projectList.Fields.Add("Description", SPFieldType.Text, false);
projectList.Update();
//Create the view? - Possibly remove me.
System.Collections.Specialized.StringCollection stringCollection =
new System.Collections.Specialized.StringCollection();
stringCollection.Add("Name");
stringCollection.Add("Description");
//Add the list.
projectList.Views.Add("Project Summary", stringCollection, @"", 100,
true, true, Microsoft.SharePoint.SPViewCollection.SPViewType.Html, false);
projectList.Update();
}
}
Который должен пройти и добавить новый список под названием проект и связанный с ним вид. Как всегда при запуске приложения я получаю:
«Активировать функции»: Ссылка на объект не указывает на экземпляр объекта
Мои вопросы:
- Почему это происходит? Активация происходит на уровне . и я являюсь администратором сайта «разработка».
- Должен ли я проверять каждый раз, чтобы убедиться, что этот список еще не существует? (Каждый раз, имея в виду каждый раз, когда я ударил Deploy)
Какая линия выбрасывает исключение? Это должно быть абсолютно первым, на что вы смотрите, и это должно быть включено в вопрос. –
На самом деле он не говорит, какая строка, это sais Line 0, Collumn 0, CustomerCommunicationProject. @jonSkeet – TheWebs
У вас нет полной трассировки стека? Ик. Можете ли вы пройти через код в отладчике? (Если вы в настоящее время запускаете сборку Release, попробуйте создать сборку Debug, что может дать вам больше информации.) –