C# XML×¢ÊÍ
×÷Õß: J. Andrew Schafer
ÕâÆªÎÄÕ¼ÙÉèÄã¶Ô XML, XSLT, ºÍ C# ÊìϤ
ÏÂÔØÕâÆªÎÄÕµÄÔ´´úÂë: XMLC.exe (76KB)
ÒëÕß˵Ã÷£ºÕâÆªÎÄÕÂÊǺÜÔçÒÔǰ¾Í·¢±íÁË£¬ËüÌṩµÄÔ´´úÂëÊÇ»ùÓÚ VS.net ²âÊ԰棨RTM ºÍ Beta 2£©µÄ¡£
ÕªÒª
C# ÔÊÐí¿ª·¢ÈËÔ±ÔÚÔ´´úÂëÖвåÈëXML×¢ÊÍ£¬ÕâÔÚ¶àÈËÐ×÷¿ª·¢µÄʱºòÏÔµÃÌØ±ðÓÐÓᣠC#½âÎöÆ÷¿ÉÒÔ°Ñ´úÂëÎļþÖеÄÕâЩXML±ê¼ÇÌáÈ¡³öÀ´£¬²¢×÷½øÒ»²½µÄ´¦ÀíΪÍⲿÎĵµ¡£ ÕâÆªÎÄÕ½«Õ¹Ê¾ÈçºÎʹÓÃÕâЩXML×¢ÊÍ¡£×÷ÕßÑÝʾÁËÈçºÎÉú³É¹¤³Ì£¬ÈçºÎ°ÑXML×¢ÊÍÊä³öΪÓÐÓÃÎĵµ£¬ÈçºÎ°ÑÕâЩעÊÍת±äΪ°ïÖúÎļþ¡£ ÔÚÏîÄ¿¿ª·¢ÖУ¬ºÜ¶àÈ˲¢²»ÀÖÒâд·±ÔÓµÄÎĵµ¡£µ«ÊÇ£¬¿ª·¢×鳤ϣÍû´úÂë×¢Ê;¡¿ÉÄÜÏêϸ£»ÏîÄ¿¹æ»®ÈËԱϣÍû´úÂëÉè¼ÆÎĵµ¾¡¿ÉÄÜÏ꾡£»²âÊÔ¡¢¼ì²éÈËԱϣÍû¹¦ÄÜ˵Ã÷Ê龡¿ÉÄÜÏêϸµÈµÈ¡£ Èç¹ûÕâЩÎĵµ¶¼±»ÒªÇóдµÄ»°£¬±£³ÖËüÃÇͬ²½±È½øÐÐÒ»¸öÕ½ÒÛ»¹Í´¿à¡£
ΪºÎ²»°ÑÕâЩÐÅÏ¢±£´æÔÚÒ»¸öµØ·½ÄØ£¿£¿×îÃ÷ÏÔÏëµ½µÄµØ·½¾ÍÊÇ´úÂëµÄ×¢ÊÍÖУ»µ«ÊÇÄãºÜÄÑͨÀÀ³ÌÐò£¬²¢ÇÒÓÐЩÐèÒªÕâЩÎĵµµÄÈ˲¢²»¶®±àÂë¡£
ÕâÆªÎÄÕ½«Õ¹Ê¾ÈçºÎͨ¹ýʹÓÃXML×¢ÊÍÀ´½â¾öÕâЩÎÊÌâ¡£´úÂë×¢ÊÍ¡¢Óû§Êֲᡢ¿ª·¢ÈËÔ±Êֲᡢ²âÊԼƻ®µÈºÜ¶àÎĵµ¿ÉÒԺܷ½±ãµÄ´ÓXML×¢ÊÍÖлñµÃ¡£ÎÒ½«ÏÈÑÝʾÈçºÎ²åÈëXML×¢ÊÍ¡¢ÈçºÎ°ÑÕâЩXML×¢Ê͵¼³öΪÁíÒ»¸öÎĵµ¡£È»ºóÔÙÌÖÂÛÿ¸öXML±ê¼ÇµÄÒâ˼£¬ÒÔ¼°Ê¹ÓÃXMLºÍXSLÉú³É°ïÖúÎļþ¡£
XML ×¢ÊÍ
ËùÓеÄXML×¢ÊͶ¼ÔÚÈý¸öÏòǰµÄбÏßÖ®ºó(///)¡£Á½ÌõбÏß±íʾÊÇÒ»¸ö×¢ÊÍ£¬±àÒëÆ÷½«ºöÂÔºóÃæµÄÄÚÈÝ¡£ÈýÌõбÏ߸æËß±àÒëÆ÷£¬ºóÃæÊÇXML×¢ÊÍ£¬ÐèÒªÊʵ±µØ´¦Àí¡£
µ±¿ª·¢ÈËÔ±ÊäÈëÈý¸öÏòǰµÄбÏߺó£¬Microsoft Visual Studio .NET IDE ×Ô¶¯¼ì²éËüÊÇ·ñÔÚÀà»òÕßÀà³ÉÔ±µÄ¶¨ÒåµÄÇ°Ãæ¡£Èç¹ûÊǵϰ£¬Visual Studio .NET IDE ½«×Ô¶¯²åÈë×¢Êͱê¼Ç£¬¿ª·¢ÈËÔ±Ö»ÐèÒªÔö¼ÓЩ¶îÍâµÄ±ê¼ÇºÍÖµ¡£ÏÂÃæ¾ÍÊÇÔÚ³ÉÔ±º¯ÊýǰÔö¼ÓÈý¸öбÏߣ¬×Ô¶¯Ôö¼ÓµÄ×¢ÊÍ£º
/// <summary>
///
/// </summary>
/// <param name="strFilePath"></param>
public void LoadXMLfromFile(string strFilePath)
ÕâÀïǶÈëµÄ±ê¼Ç½ö½öÊÇVisual Studio .NET IDE µÄÒ»²¿·Ö±ê¼Ç£¬È»¶øÔÚIntelliSense for xmlÖУ¬²¢Ã»ÓаÑc#¹æ·¶ÖÐËùÓеıê¼ÇÁгöÀ´£¬ÒÅʧµÄ²¿·ÖÖ»ÄÜÓÃÊÖ¹¤²åÈë¡£
ÕâЩÊÖ¹¤±ê¼ÇÊǷdz£ÓÐÓõģ¬Èç¹ûÇ¡µ±µØÉèÖÃËûÃÇ£¬¶Ôµ¼³ö³
Ïà¹ØÎĵµ£º
XML ×÷ΪÊý¾ÝÔ´µÄʵÀý£¨TESTED£©
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="http://www.adobe.com/2006/mxml" layout="absolute" preinitialize="preInit()" fontSize="12" height="500">
<mx:Script>
  ......
ÕâÆª½Ì³Ì̽ÌÖASP.NET MVC¿ØÖÆÆ÷£¬¿ØÖÆÆ÷actionºÍaction result¡£Íê³É´Ë½Ì³Ìºó£¬Äã»á¶®µÃ¿ØÖÆÆ÷ÈçºÎ±»ÓÃÀ´¿ØÖÆ·ÃÎÊÕßÓëASP.NET MVCÍøÕ¾µÄ½»»¥·½Ê½¡£
Àí½â¿ØÖÆÆ÷
MVC ¿ØÖÆÆ÷¸ºÔð¶ÔASP.NET MVCÍøÕ¾µÄÇëÇó×÷³ö»ØÓ¦¡£Ã¿Ò»¸öä¯ÀÀÆ÷ÇëÇó¶¼±»Ó³Éäµ½Ò»¸öÌØ¶¨µÄ¿ØÖÆÆ÷¡£ÀýÈ磬ÏëÏóÄãÔÚä¯ÀÀÆ÷µØÖ·À¸ÊäÈëÒÔÏÂURL:
http://localhost/P ......
ÔںܶàÇé¿öÏÂ, ÎÒÃÇ»áÓõ½XML,±ÈÈç˵ÅäÖÃÎļþµÈ.C#ÌṩÁËXMLÀà.
ÕâÀïÎÒÖ»ÊǼòµ¥µÄдһÏÂXMLÎļþµÄÉú³É,½âÎö¾Í²»¶à˵ÁË.
µÚÒ»ÖÖ·½·¨
DataBase db = DataBaseFactory.CreateDataBase(DataBaseType.MySql, strMysql);
......
SQLServer2005·Ö½â²¢µ¼ÈëxmlÎļþ ÊÕ²Ø
²âÊÔ»·¾³SQL2005£¬windows2003
DECLARE @idoc int;
DECLARE @doc xml;
SELECT @doc=bulkcolumn from OPENROWSET(
BULK 'D: \test.xml',
SINGLE_BLOB) AS x
EXEC sp_xml_preparedocument @Idoc OUTPUT, @doc
......
public sealed class XmlHelper
{
public static void Serialize<T>(T obj,string fileName)
{
TextWriter writer = new StreamWriter(fileName);
try
{
XmlSerializer ser = new XmlSerializer(typeof(T));
......