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 ......
дÕâÆªÎÄÕµÄÔÒòÓÐÈçϼ¸µã£º1)C++±ê×¼¿âÖÐûÓвÙ×÷XMLµÄ·½·¨£¬ÓÃC++²Ù×÷XMLÎļþ±ØÐëÊìϤһÖÖº¯Êý¿â£¬LIBXML2ÊÇÆäÖÐÒ»ÖÖºÜÓÅÐãµÄXML¿â£¬¶øÇÒËüͬʱ֧³Ö¶àÖÖ±à³ÌÓïÑÔ£»2)LIBXML2¿âµÄTutorialдµÃ²»Ì«ºÃ£¬ÓÈÆäÊDZàÂëת»»µÄ²¿·Ö£¬²»ÊÊÓÃÓÚÖÐÎıàÂëµÄת»»£»3)ÍøÉϵĴó¶àÊý¹ØÓÚLibxml2µÄ½éÉܽö½öÊÇ·ÒëÁË×Ô´øµÄ×ÊÁÏ£¬Ã»ÓÐÏêϸ½é ......
ÕâÆªÎÄÕ±»×ªÔصĴÎÊý×î¶à£¬Æäʵ´úÂë¼òªµÃÎÒ×Ô¼º¶¼¿´²»ÏÂÈ¥¡£Ö»²»¹ý·¢±íÕâÆªÎÄÕÂʱºÜ¶àÈËÐèÒªÕâ¸ö¹¦ÄÜ¡£
Õ⼸Ììд¸öÊý¾Ý¿â²éѯ·ÖÎöÆ÷£¬ÒªÓõ½XML¼Ç¼Óû§×¢²áµÄÊý¾Ý¿âÁ¬½ÓµØÖ·¡¢¶Ë¿ÚµÈÐÅÏ¢£¬×ʼÏëÓÃjava ......
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));
......