在silverlight托管WEB端:
item.cs:
namespace FYGuestBook.Web
{
public class Item
{
public int ID { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public string Logo { get; set; }
public string Content { get; set; }
public string AddTime { get; set; }
public string IP { get; set; }
}
}
DFBLL.cs//实现方法
using System.Linq;
using System.Web;//httpcontext所要包含的头文件
using System.Xml.Linq;//linq操作xml
public class DFBLL
{
public static string GetXmlFile()
{
return HttpContext.Current.Server.MapPath(@"XmlDB/XMLFile.xml");//web项下建立文件夹XmlDB,再建立xml文件
}
public static List<Item> GetGuestList()
{
XDocument doc = XDocument.Load(DFBLL.GetXmlFile());
var items = doc.Descendants("item").Select(p=>new {
ID=Convert.ToInt32(p.Element("id").Value),
Name=p.Element("name").Value,
Email=p.Element("email").Value,
Logo=p.Element("logo").Value,
Content=p.Element("content").Value,
AddTime=p.Element("addtime").Value,
IP=p.Element("ip").Value
});
List<Item> myList = new List<Item>();
foreach (var item in items)
{
Item myItem = new Item();
myItem.ID = item.ID;
myItem.Name = item.Name;
myItem.Email = item.Email;
myItem.Logo = item.Logo;
myItem.Content = item.Content;
myItem.AddTime = item.AddTime;
myItem.IP = item.IP;
myList.Add(myItem);
}
return myList;
}
public static void InsertGuest(Item item)
{
XDocument doc = XDocument.Load(DFBLL.GetXmlFile());
XElement contacts=
new XElement("item",
new XElement("id",item.ID),
new XElement("name",item.Name),
new XElement("email",item.Email),
new XElement("logo",item.Logo),
new XElement("content",item.Content),
new XElement("addtime",item.AddTime),
new XElement("ip",HttpContext.Current.Request.UserHostAddress));
doc.Root.AddFirst(contacts);
doc.Save(DFBLL.GetXmlFile());
}
public static void DeleteGuest(int ID)
{
XDocument doc = XDocument.Load(DFBLL.GetXmlFile());
var contacts = from p in doc.Root.Elements("item")
where p.Element("id").Value == ID.ToString()
select p;
contacts.Remove();
doc.Save(DFBLL.GetXmlFile());
}
}