c#orm¿ò¼ÜÓÐÄļ¸ÖÖ
Ê¢ÐÐµÄ c# orm ¿ò¼ÜÓУºentity framework£ºÒ×Óᢹ¦Ð§¸»ºñ¡£nhibernate£ºÐÔÄܸߡ¢¿É¶¨ÖÆÐÔÇ¿¡£dapper£ºÇáÁ¿¼¶¡¢¸ßÐÔÄÜ¡£petapoco£º¾«Á·¡¢Ò×Óá£servicestack.ormlite£ºÐÔÄܸߡ¢ÎÞаÐÔÇ¿¡£Ñ¡Ôñ orm ¿ò¼Üʱ£¬Ðè˼Á¿ÒòËØ°üÀ¨ÐÔÄÜ¡¢Ò×ÓÃÐÔ¡¢¿É¶¨ÖÆÐÔ¡¢¼æÈÝÐÔ¡£
C# ORM ¿ò¼Ü
ÏÈÈÝ
¹¤¾ß¹ØϵӳÉä (ORM) ¿ò¼ÜÔÚ C# ÖÐÊÎÑÝ×ÅÖ÷ÒªµÄ½ÇÉ«£¬Ëü¿ÉÒÔͨ¹ý×Ô¶¯½«Êý¾Ý¿âÖеıíºÍ×Ö¶ÎÓ³Éäµ½ C# À࣬´Ó¶ø¼ò»¯Êý¾Ý»á¼û²Ù×÷¡£ÒÔÏÂÊǼ¸ÖÖÊ¢ÐÐµÄ C# ORM ¿ò¼Ü£º
1. Entity Framework (EF)
EF ÊÇ Microsoft ¿ª·¢µÄ¹Ù·½ ORM ¿ò¼Ü£¬ËüÓë .NET Framework ºÍ .NET Core ¼æÈÝ¡£EF ÒÔÆäÒ×ÓÃÐÔºÍÆÕ±éµÄ¹¦Ð§¶øÖøÃû£¬°üÀ¨ÊµÌåÅÌÎÊÓïÑÔ (LINQ) Ö§³Ö¡¢Êý¾ÝǨáãºÍ´úÂëÓÅÏÈ¿ª·¢¡£
2. NHibernate
NHibernate ÊÇÒ»¿î¿ªÔ´ ORM ¿ò¼Ü£¬ÒÔÆ侫²ÊµÄÐÔÄܺ͸߶ȿɶ¨ÖÆÐÔ¶øÖøÃû¡£ËüÖ§³Ö¶àÖÖÊý¾Ý¿â£¬²¢ÌṩÁËһϵÁи߼¶¹¦Ð§£¬ÀýÈ绺´æ¡¢¹¤¾ß¹ØϵÖÎÀíºÍÊÂÎñÖÎÀí¡£
3. Dapper
Dapper ÊÇÒ»¸öÇáÁ¿¼¶µÄ ORM ΢¿ò¼Ü£¬Ëüͨ¹ýʹÓö¯Ì¬ÊðÀíºÍ±àÒëÅÌÎÊÀ´ÊµÏÖ¸ßÐÔÄÜ¡£ËüºÜÊÇÊʺÏÐèÒª¿ìËÙ¡¢¼òÆÓµÄÊý¾Ý»á¼û²Ù×÷µÄÓ¦ÓóÌÐò¡£
4. PetaPoco
PetaPoco ÊÇÁíÒ»¸öÇáÁ¿¼¶µÄ ORM ¿ò¼Ü£¬ËüרעÓÚ¾«Á·ÐÔºÍÒ×ÓÃÐÔ¡£ËüÌṩÁ˼òÆ API£¬Ö»Ð輸ÐдúÂë¼´¿ÉÖ´ÐÐ CRUD ²Ù×÷ºÍÖØ´óÅÌÎÊ¡£
5. ServiceStack.OrmLite
ServiceStack.OrmLite ÊÇÒ»¸ö¿ªÔ´ ORM ¿ò¼Ü£¬Ëü¾ßÓо«²ÊµÄÐÔÄܺÍÎÞаÐÔ¡£ËüÖ§³Ö¶àÖÖÊý¾Ý¿â£¬²¢ÌṩÁ˸»ºñµÄ API£¬°üÀ¨¸ß¼¶ÅÌÎÊ¡¢Åú´¦Àí²Ù×÷ºÍÊÂÎñÖÎÀí¡£
Ñ¡Ôñ ORM ¿ò¼Ü
Ñ¡ÔñºÏÊ浀 ORM ¿ò¼ÜÈ¡¾öÓÚÓ¦ÓóÌÐòµÄÏêϸҪÇó¡£ÒÔÏÂÊÇһЩÐèҪ˼Á¿µÄÒòËØ£º
- ÐÔÄÜ£º¹ØÓÚÐèÒª¸ßÐÔÄÜÊý¾Ý»á¼û²Ù×÷µÄÓ¦ÓóÌÐò£¬NHibernate »ò Dapper ÊDz»´íµÄÑ¡Ôñ¡£
- Ò×ÓÃÐÔ£ºÈôÊÇÓÅÏÈ˼Á¿Ò×ÓÃÐÔ£¬EF »ò PetaPoco ÊÇÍƼöµÄÑ¡Ïî¡£
- ¿É¶¨ÖÆÐÔ£ºÈôÊÇÐèÒª¸ß¶È¿É¶¨ÖƵĿò¼Ü£¬NHibernate ÊÇÊ×Ñ¡¡£
- ¼æÈÝÐÔ£ºÈ·±£ËùÑ¡¿ò¼ÜÓëÓ¦ÓóÌÐòʹÓõÄÊý¾Ý¿âºÍÊÖÒÕÕ»¼æÈÝ¡£
ÒÔÉϾÍÊÇc#orm¿ò¼ÜÓÐÄļ¸ÖÖµÄÏêϸÄÚÈÝ£¬¸ü¶àÇë¹Ø×¢±¾ÍøÄÚÆäËüÏà¹ØÎÄÕ£¡