×î½üÔÚÕÒÊý¾Ýµ¼³öµ½EXCELµÄ·½·¨£¬·¢ÏÖÖñÁÖbat800ÔÚblogÖз¢²¼µÄ·½·¨£¬ÎªÁ˱ãÓÚÒÔºó²éÕÒתµ½×Ô¼ºblogÏÂ
http://blog.csdn.net/bat800/archive/2007/07/17/1694537.aspx
ÕâÊÇÔÎĵØÖ·
Ò»¡¢asp.netÖе¼³öExeclµÄ·½·¨£º
ÔÚasp.netÖе¼³öExeclÓÐÁ½ÖÖ·½·¨£¬Ò»ÖÖÊǽ«µ¼³öµÄÎļþ´æ·ÅÔÚ·þÎñÆ÷ij¸öÎļþ¼ÐÏÂÃ棬Ȼºó½«ÎļþµØÖ·Êä³öÔÚä¯ÀÀÆ÷ÉÏ£»Ò»ÖÖÊǽ«ÎļþÖ±½Ó½«ÎļþÊä³öÁ÷д¸øä¯ÀÀÆ÷¡£ÔÚResponseÊä³öʱ£¬t·Ö¸ôµÄÊý¾Ý£¬µ¼³öexeclʱ£¬µÈ¼ÛÓÚ·ÖÁУ¬nµÈ¼ÛÓÚ»»ÐС£
1¡¢½«Õû¸öhtmlÈ«²¿Êä³öexecl
´Ë·¨½«htmlÖÐËùÓеÄÄÚÈÝ£¬Èç°´Å¥£¬±í¸ñ£¬Í¼Æ¬µÈÈ«²¿Êä³öµ½ExeclÖС£
Response.Clear();
Response.Buffer= true;
Response.AppendHeader("Content-Disposition","attachment;filename="+DateTime.Now.ToString("yyyyMMdd")+".xls");
Response.ContentEncoding=System.Text.Encoding.UTF8;
Response.ContentType = "a ......
ÔÚʹÓÃÍøÕ¾¹ÜÀí¹¤¾ß×öµÇ¼ҳÃæµÄʱºòÓöµ½µÄÎÊÌâ
ËùÓöÎÊÌ⣺½øÈëVisual Studio 2005µÄ“ÍøÕ¾”²Ëµ¥µÄ“ASP.NET ÅäÖԺ󣬵ã»÷“°²È«”ºó£¬³öÏÖÈçϵijö´íÐÅÏ¢£º
“Ñ¡¶¨µÄÊý¾Ý´æ´¢Çø³öÏÖÎÊÌ⣬ÔÒò¿ÉÄÜÊÇ·þÎñÆ÷Ãû³Æ»òƾ¾ÝÎÞЧ£¬»òÕßȨÏÞ²»×ã¡£Ò²¿ÉÄÜÊÇδÆôÓýÇÉ«¹ÜÀíÆ÷¹¦ÄÜÔì³ÉµÄ¡£Çëµ¥»÷ÏÂÃæµÄ°´Å¥£¬ÒÔÖض¨Ïòµ½¿ÉÒÔÑ¡ÔñÐÂÊý¾Ý´æ´¢ÇøµÄÒ³¡£
ÏÂÃæµÄÏûÏ¢¿ÉÄÜ»áÓÐÖúÓÚÕï¶ÏÎÊÌâ: ÎÞ·¨Á¬½Óµ½ SQL Server Êý¾Ý¿â¡£ ”
ϵͳÅäÖãºWindows vista sp2 + IIS7 + Visual Studio 2005 + SQL Server 2005
½â¾ö°ì·¨£º
1¡¢´ò¿ªSDK ÃüÁîÌáʾ£¨ËùÓгÌÐò——Microsoft .NET Framework SDK v2.0——SDK ÃüÁîÌáʾ¡£Ò²¿É´ò¿ªVSµÄÃüÁîÌáʾ£©£¬ÊäÈëaspnet_regsql£¬µ¯³öASP.NET SQL Server °²×°Ïòµ¼£¬µãÏÂÒ»²½£¬µã“ΪӦÓóÌÐò·þÎñÅäÖà SQL Server”£¬µãÏÂÒ»²½£¬Êý¾Ý¿âÓÃ<ĬÈÏ>(aspnetdb)£¬µãÏÂÒ»²½£¬Íê³É¡£
2¡¢´ò¿ªVisual Studio 2005£¬ÒÀ´Î£º¹¤¾ß-->Ñ¡Ïî-->Êý¾Ý¿â¹¤¾ß-->Êý¾ÝÁ¬½Ó-->SQL S ......
×î½ü¼¸ÖÜ£¬ÔÚ²©¿Í¡¢TwitterºÍÂÛ̳ÉÏÈç»ðÈçݱµØÕ¹¿ªÁËÒ»³¡ÌÖÂÛ¡£ÌÖÂÛµÄÄÚÈÝÊÇ£º¿ª·¢ÈËÔ±ÊÇ·ñÓ¦¸ÃʹÓûòѧϰASP.NET MVC¡£´Ó“²»ÍƼöѧϰ”µ½“ËùÓÐASP.NET¿ª·¢ÈËÔ±¶¼Ó¦¸Ãѧϰ”£¬¸÷ÖÖ²»Í¬µÄ¹Ûµã²ã³ö²»Çî¡£InfoQ¶ÔÆäÖв¿·ÖÌÖÂÛÄÚÈݽøÐÐÁË×ܽᡣ
Rob Conerey£¨SubSonicÖ®¸¸£¬Ä¿Ç°ÊÇ΢ÈíASP.NET MVCÍŶӵÄÒ»Ô±£©½âÊÍÁËΪʲô¿ª·¢ÈËÔ±Ó¦¸ÃѧϰASP.NET MVC¡£ÔÚÎÄÕµĿªÊ¼£¬Ëû³ÆWebFormsÊÇÒ»¸ö“¾Þ´óµÄ»ÑÑÔ”¡£
WebFormsÊǸö»ÑÑÔ£¬ËüÊÇÒ»¸ö±»ÖÖÖÖ»ÑÑÔºÍÆÛÆËù°üΧ×ŵijéÏó»úÖÆ¡£Äã¶ÔWebFormsËù×öµÄÒ»Çж¼ÓëWebÎÞ¹Ø £ Ëü°ïÄã×öÁ˱¾¸ÃÄã×Ô¼º×öµÄÊ¡£
ÅóÓÑÃÇ£¬Õâ¿ÉÊǼþ´óÊ£¨ÖÁÉÙ¶ÔÎÒÀ´Ëµ£©£ºÄ㹤×÷ÔÚ»ÑÑÔÖС£WebÊÇ“Îޔ״̬µÄ£¬ËüÒÀÀµÒ»ÖÖ½Ð×öHTMLµÄ¶«Î÷£¬²¢Ê¹ÓÃÁíÒ»ÖÖ½Ð×öHTTPµÄ¶«Î÷ͨ¹ýµçÀ½«HTML·¢À´·¢È¥£ÄãÐèÒªÁ˽âËü¡¢ÈÈ°®Ëü²¢ÔÚ¹Ç×ÓÀï¸ÐÊÜËü¡£
RobÁоÙÁË7¸öʹÓÃASP.NET MVCµÄÀíÓÉ£¬»òÕßÓÃËûµÄ»°Ëµ“±ÜÃâ±»³ÆΪ¹ÖÈ˵Ä7¸öÀíÓÉ”£º
¿É²âÊÔÐÔ
ÍêÈ«¿ØÖÆHTML
¿ÉÀ©Õ¹
´ÙʹÄã˼¿¼
Ò×ÓÚ¿Í»§¶ËJavascript±à³Ì
¿ÉÒÔѧµ½ÐµĶ«Î÷
ÓÐȤ
È»ºó×ܽᵽ£º
½áÂÛ£ºWeb±à³ÌÔÙÒ»´Î³äÂúÁËÀÖȤ£¬ÖÁÉÙ¶ÔÎÒºÍÎÒµÄèÀ´Ëµ¡£µ±È»ÕâÓ ......
×î½ü¼¸ÖÜ£¬ÔÚ²©¿Í¡¢TwitterºÍÂÛ̳ÉÏÈç»ðÈçݱµØÕ¹¿ªÁËÒ»³¡ÌÖÂÛ¡£ÌÖÂÛµÄÄÚÈÝÊÇ£º¿ª·¢ÈËÔ±ÊÇ·ñÓ¦¸ÃʹÓûòѧϰASP.NET MVC¡£´Ó“²»ÍƼöѧϰ”µ½“ËùÓÐASP.NET¿ª·¢ÈËÔ±¶¼Ó¦¸Ãѧϰ”£¬¸÷ÖÖ²»Í¬µÄ¹Ûµã²ã³ö²»Çî¡£InfoQ¶ÔÆäÖв¿·ÖÌÖÂÛÄÚÈݽøÐÐÁË×ܽᡣ
Rob Conerey£¨SubSonicÖ®¸¸£¬Ä¿Ç°ÊÇ΢ÈíASP.NET MVCÍŶӵÄÒ»Ô±£©½âÊÍÁËΪʲô¿ª·¢ÈËÔ±Ó¦¸ÃѧϰASP.NET MVC¡£ÔÚÎÄÕµĿªÊ¼£¬Ëû³ÆWebFormsÊÇÒ»¸ö“¾Þ´óµÄ»ÑÑÔ”¡£
WebFormsÊǸö»ÑÑÔ£¬ËüÊÇÒ»¸ö±»ÖÖÖÖ»ÑÑÔºÍÆÛÆËù°üΧ×ŵijéÏó»úÖÆ¡£Äã¶ÔWebFormsËù×öµÄÒ»Çж¼ÓëWebÎÞ¹Ø £ Ëü°ïÄã×öÁ˱¾¸ÃÄã×Ô¼º×öµÄÊ¡£
ÅóÓÑÃÇ£¬Õâ¿ÉÊǼþ´óÊ£¨ÖÁÉÙ¶ÔÎÒÀ´Ëµ£©£ºÄ㹤×÷ÔÚ»ÑÑÔÖС£WebÊÇ“Îޔ״̬µÄ£¬ËüÒÀÀµÒ»ÖÖ½Ð×öHTMLµÄ¶«Î÷£¬²¢Ê¹ÓÃÁíÒ»ÖÖ½Ð×öHTTPµÄ¶«Î÷ͨ¹ýµçÀ½«HTML·¢À´·¢È¥£ÄãÐèÒªÁ˽âËü¡¢ÈÈ°®Ëü²¢ÔÚ¹Ç×ÓÀï¸ÐÊÜËü¡£
RobÁоÙÁË7¸öʹÓÃASP.NET MVCµÄÀíÓÉ£¬»òÕßÓÃËûµÄ»°Ëµ“±ÜÃâ±»³ÆΪ¹ÖÈ˵Ä7¸öÀíÓÉ”£º
¿É²âÊÔÐÔ
ÍêÈ«¿ØÖÆHTML
¿ÉÀ©Õ¹
´ÙʹÄã˼¿¼
Ò×ÓÚ¿Í»§¶ËJavascript±à³Ì
¿ÉÒÔѧµ½ÐµĶ«Î÷
ÓÐȤ
È»ºó×ܽᵽ£º
½áÂÛ£ºWeb±à³ÌÔÙÒ»´Î³äÂúÁËÀÖȤ£¬ÖÁÉÙ¶ÔÎÒºÍÎÒµÄèÀ´Ëµ¡£µ±È»ÕâÓ ......
ÈÎÖ°×ʸñ:
1. ´óѧ±¾¿ÆÒÔÉÏѧÀú£¬ÈýÄêÒÔÉÏÈí¼þ¿ª·¢¹¤×÷¾Ñé»ò»¥ÁªÍø¿ª·¢¾Ñ飻¾ßÓжþ¸ö¼°ÒÔÉÏÖÐÐÍÏîÄ¿µÄ³É¹¦ÊµÊ©¾Ñ飻
2. ÓÐ׼ȷÀí½âÐèÇ󡢼ܹ¹ÄÜÁ¦£¬ÓнÏÇ¿µÄ³ÌÐòÉè¼ÆÄÜÁ¦, ÊìϤÃæÏò¶ÔÏó·ÖÎö¡¢Èí¼þ¹¤³Ì¡¢UMLµÈÏà¹Ø¼¼Êõ£»
3. ÊìÁ·ÕÆÎÕ¼ÆËã»ú±à³ÌÒ»°ã˼ÏëºÍ·½·¨£»ÊìϤһÖÁÁ½ÖÖÃæÏò¶ÔÏó±à³ÌÓïÑÔ£»¾«Í¨.NET¡¢ C#¡¢ASP.net¡¢webservice¡¢XMLºÍJavaScriptÓïÑÔµÈWEB¼¼ÊõÒÔ¼°ä¯ÀÀÆ÷/·þÎñÆ÷£¨B/S£©¿ª·¢Ä£Ê½£»
4. ¶Ôado.net ÓнÏÉîÈëµÄÁ˽⣬.ÊìϤ.NET¿ò¼Ü£¬ÓнÏÇ¿µÄÂ߼˼ά˼Ï룬ÊìϤÉè¼Æģʽ£¬ÊìϤÈý²ã¼Ü¹¹£¬.net¿Ø¼þµÄ±àд
5. ÊìÁ·ÕÆÎÕÒ»ÖÖ´óÐ͹ØϵÊý¾Ý¿â£¨Oracle¡¢SQLµÈ£©Ó¦Óÿª·¢£¬ÄÜÊìÁ·Ê¹ÓÃSQLÓïÑÔ£¬ÊìÁ·ÕÆÎÕ¶àÖÖ²Ù×÷ϵͳ°üÀ¨Windows2003 ServerÒÔ¼°³£Óð칫Èí¼þµÈ£»
6. Äܹ»¶ÀÁ¢Íê³ÉÖÐСÐÍÏîÄ¿»ò²úÆ·Èí¼þ£¬°üÀ¨ÐèÇó·ÖÎö¡¢ÏµÍ³Éè¼Æ¡¢±à³Ì¡¢²âÊÔºÍÍêÉÆÎĵµ,¾ßÓнÏÇ¿µÄÈí¼þÎĵµ±àдÄÜÁ¦£»
7. ÕÆÎÕ»ù±¾µÄÈí¼þ²âÊÔÓëÖÊÁ¿¹ÜÀíµÄ֪ʶ£¬²¢ÄܽϺõØÓëʵ¼ù½áºÏÆðÀ´,ÎȲ½ÌṩÈí¼þ»òÏîÄ¿ÖÊÁ¿£»
8. ÔðÈÎÐÄÇ¿¡¢¸»ÓÐÍŶӺÏ×÷¾«Éñ£¬¾ßÓÐÁ¼ºÃµÄѧϰÓûÍû£»Á¼ºÃµÄ¹µÍ¨¼¼ÇÉ£¬ÄÜ¿ìËÙÕÆÎÕÐÂ֪ʶ£»
9. ¾«Í¨Ms SqlServer 2005¿ª·¢Óë¹ÜÀí¼°.net3.5¿ò¼Ü¿ª·¢µÈ£»
10.ÕÆÎÕEnterprise Library 4. ......
ÈÎÖ°×ʸñ:
1. ´óѧ±¾¿ÆÒÔÉÏѧÀú£¬ÈýÄêÒÔÉÏÈí¼þ¿ª·¢¹¤×÷¾Ñé»ò»¥ÁªÍø¿ª·¢¾Ñ飻¾ßÓжþ¸ö¼°ÒÔÉÏÖÐÐÍÏîÄ¿µÄ³É¹¦ÊµÊ©¾Ñ飻
2. ÓÐ׼ȷÀí½âÐèÇ󡢼ܹ¹ÄÜÁ¦£¬ÓнÏÇ¿µÄ³ÌÐòÉè¼ÆÄÜÁ¦, ÊìϤÃæÏò¶ÔÏó·ÖÎö¡¢Èí¼þ¹¤³Ì¡¢UMLµÈÏà¹Ø¼¼Êõ£»
3. ÊìÁ·ÕÆÎÕ¼ÆËã»ú±à³ÌÒ»°ã˼ÏëºÍ·½·¨£»ÊìϤһÖÁÁ½ÖÖÃæÏò¶ÔÏó±à³ÌÓïÑÔ£»¾«Í¨.NET¡¢ C#¡¢ASP.net¡¢webservice¡¢XMLºÍJavaScriptÓïÑÔµÈWEB¼¼ÊõÒÔ¼°ä¯ÀÀÆ÷/·þÎñÆ÷£¨B/S£©¿ª·¢Ä£Ê½£»
4. ¶Ôado.net ÓнÏÉîÈëµÄÁ˽⣬.ÊìϤ.NET¿ò¼Ü£¬ÓнÏÇ¿µÄÂ߼˼ά˼Ï룬ÊìϤÉè¼Æģʽ£¬ÊìϤÈý²ã¼Ü¹¹£¬.net¿Ø¼þµÄ±àд
5. ÊìÁ·ÕÆÎÕÒ»ÖÖ´óÐ͹ØϵÊý¾Ý¿â£¨Oracle¡¢SQLµÈ£©Ó¦Óÿª·¢£¬ÄÜÊìÁ·Ê¹ÓÃSQLÓïÑÔ£¬ÊìÁ·ÕÆÎÕ¶àÖÖ²Ù×÷ϵͳ°üÀ¨Windows2003 ServerÒÔ¼°³£Óð칫Èí¼þµÈ£»
6. Äܹ»¶ÀÁ¢Íê³ÉÖÐСÐÍÏîÄ¿»ò²úÆ·Èí¼þ£¬°üÀ¨ÐèÇó·ÖÎö¡¢ÏµÍ³Éè¼Æ¡¢±à³Ì¡¢²âÊÔºÍÍêÉÆÎĵµ,¾ßÓнÏÇ¿µÄÈí¼þÎĵµ±àдÄÜÁ¦£»
7. ÕÆÎÕ»ù±¾µÄÈí¼þ²âÊÔÓëÖÊÁ¿¹ÜÀíµÄ֪ʶ£¬²¢ÄܽϺõØÓëʵ¼ù½áºÏÆðÀ´,ÎȲ½ÌṩÈí¼þ»òÏîÄ¿ÖÊÁ¿£»
8. ÔðÈÎÐÄÇ¿¡¢¸»ÓÐÍŶӺÏ×÷¾«Éñ£¬¾ßÓÐÁ¼ºÃµÄѧϰÓûÍû£»Á¼ºÃµÄ¹µÍ¨¼¼ÇÉ£¬ÄÜ¿ìËÙÕÆÎÕÐÂ֪ʶ£»
9. ¾«Í¨Ms SqlServer 2005¿ª·¢Óë¹ÜÀí¼°.net3.5¿ò¼Ü¿ª·¢µÈ£»
10.ÕÆÎÕEnterprise Library 4. ......
Ëü»¹»áÔÚÖ¸¶¨µÄÊý¾Ý¿âÖÐÔö¼Ó¼¸¸ö´æ´¢¹ý³Ì£¬ÓÃÀ´ÈÃASP.NETÒýÇæ²éѯ׷×ÙµÄÊý¾Ý±íµÄÇé¿ö¡£
È»ºó£¬Ëü»á¸øÎÒÃÇҪ׷×ÙµÄTable¼ÓÉϼ¸¸öTrigger£¬·Ö±ð¶ÔÓ¦µ½Insert¡¢Update¡¢Delete²Ù×÷£¬Õ⼸¸öTriggerµÄÓï¾ä·Ç³£¼òµ¥£¬¾ÍÊÇ°Ñ“AspNet_SqlCacheTablesForChangeNotification”±íÖжÔÓ¦“tableName”×Ö¶ÎΪÕâ¸ö×·×ٵıíµÄÃû³ÆµÄ¼Ç¼µÄ“changeId”×ֶμÓÉÏÒ»¸ö1¡£
ASP.NETÒýÇæͨ¹ýÖ´ÐÐËü¼ÓÉϵĴ洢¹ý³Ì“AspNet_SqlCachePollingStoredProcedure”£¬Õâ¸ö´æ´¢¹ý³ÌÖ±½Ó·µ»Ø“AspNet_SqlCacheTablesForChangeNotification”±íµÄÄÚÈÝ£¬ÈÃASP.NETÒýÇæÖªµÀÄĸö±íµÄÊý¾Ý·¢ÉúµÄ±ä»¯¡£Ä¬ÈÏÿ500ºÁÃëÖ´ÐÐÕâ¸ö´æ´¢¹ý³ÌÒ»´Î£¬²»¹ý¿ÉÒÔÔÚweb.configÀïÃæÐÞ¸ÄÕâ¸ö¼ä¸ôʱ¼ä£¬ÎҵľÑéÊÇÕâ¸ö²éѯ²Ù×÷Ò²ÊǺܺÄ×ÊÔ´µÄ£¬ºÇºÇ¡£
2¡¢ web.configÅäÖÃ
ÔÚweb.configÀïÃæµÄÅäÖÃÔÙ¼òµ¥²»¹ýÁË
<configurati ......
//TransmitFileʵÏÖÏÂÔØ
protected void Button1_Click(object sender, EventArgs e)
{
/*
΢ÈíΪResponse¶ÔÏóÌṩÁËÒ»¸öеķ½·¨TransmitFileÀ´½â¾öʹÓÃResponse.BinaryWrite
ÏÂÔس¬¹ý400mbµÄÎļþʱµ¼ÖÂAspnet_wp.exe½ø³Ì»ØÊÕ¶øÎÞ·¨³É¹¦ÏÂÔصÄÎÊÌâ¡£
´úÂëÈçÏ£º
*/
Response.ContentType = "application/x-zip-compressed";
Response.AddHeader("Content-Disposition", "attachment;filename=z.zip");
string filename = Server.MapPath("DownLoad/z.zip");
Response.TransmitFile(filename);
}
//WriteFileʵÏÖÏÂÔØ
protected void Bu ......