<%@ Assembly Name="Microsoft.SharePoint,Version=12.0.0.0,Culture=neutral,PublicKeyToken=71e9bce111e9429c" %> <%@ WebHandler Language="C#" Class="SP_PDFSubmitHandler" %> using System; using System.Web; using Microsoft.SharePoint; using System.Xml; public class SP_PDFSubmitHandler : IHttpHandler { public void ProcessRequest (HttpContext context) { SPSite site = SPContext.Current.Site; SPWeb web = site.OpenWeb(); try { string rawXML = ""; XmlTextReader reader = new XmlTextReader(context.Request.InputStream); XmlDocument xmlDoc = new XmlDocument(); xmlDoc.Load(reader); string _xmlString = xmlDoc.InnerXml; System.Text.ASCIIEncoding encoding = new System.Text.ASCIIEncoding(); string _fileTime = DateTime.Now.ToFileTime().ToString(); byte[] docAsBytes = encoding.GetBytes(_xmlString); //Insert Document web.AllowUnsafeUpdates = true; SPList list = web.Lists["Purchase Order"]; SPListItem item = list.Items.Add(); item["Title"] = "PurchaseOrder_" + _fileTime + ".xml"; item["Company Name"] = xmlDoc.GetElementsByTagName("txtOrderedByCompanyName").Item(0).InnerText; item["Date"] = xmlDoc.GetElementsByTagName("dtmDate").Item(0).InnerText; item["Order Total"] = xmlDoc.GetElementsByTagName("numGrandTotal").Item(0).InnerText; item.Attachments.Add("PurchaseOrder_" + _fileTime + ".xml", docAsBytes); item.Update(); //Redirect the browser to the Purchase Order list so we can see our submisison. context.Response.Redirect("http://myserver/Lists/Purchase%20Order/AllItems.aspx"); } catch (Exception ex) { context.Response.Write(ex.Message); } } public bool IsReusable { get { return false; } } }