using (SPWeb web = properties.Web.Site.OpenWeb("/web"))
{
list = web.Lists["My list"];
SPFolderCollection collection = list.RootFolder.SubFolders;
//Create new folder
SPFolder folder = collection.Add("Automatically created at " + DateTime.Now.ToString().Replace(":", "-"));
item = folder.Item;
item[SPBuiltInFieldId.Comments] = "Automatically created";
this.EventFiringEnabled = false;
try
{
item.Update();
}
finally
{
this.EventFiringEnabled = true;
}
}
//insert attachment to folder
if (item.Folder != null)
{
SPFolder folder = item.Folder;
if (properties.ListItem.Attachments.Count > 0)
{
SPFile file = item.Web.Site.RootWeb.GetFile(properties.ListItem.Attachments.UrlPrefix + properties.ListItem.Attachments[0]);
byte[] imageData = file.OpenBinary();
SPListItem contractItem = folder.Files.Add(properties.ListItem.Attachments[0], imageData).Item;
contractItem.Update();
}
}
Polish developer blog, I will try to post some tips for Sharepoint and .Net in general.
Friday, 27 May 2011
Creating folder in a document library and creating file inside that folder
In order to create programmatically folder inside library and then create file inside that folder you can use following code:
Thursday, 26 May 2011
Creating a generic list of an anonymous type ?!?
Yesterday I was wondering how to create a generic list of an anonymous type, something like this:
We can extend it to create factory creating those lists:
var employee = new { FirstName = "Jan", LastName = "Kowalski" };
var employeeList = new List();
At the beginning I though this was impossible, but the resolution is closer than it appears:var employee = new { FirstName = "Jan", LastName = "Kowalski" };
var employeeList = (new[] {employee}).ToList();
employeeList.Clear();
We can extend it to create factory creating those lists:
public static List<T> CreateList<T>(T itemOftype)
{
List<T> newList = new List<T>();
return newList;
}
Subscribe to:
Comments (Atom)