Hova tűnt az Add?

A minap azzal küzdöttem, hogy Visual Studio 2008 Release Candidate alatt próbáltam működésre bírni egy LINQ to SQL-es projektet, ami Beta 2 alatt készült. Keserves küzdés volt, mert nagyon nem hagyta magát, hiányzott neki a generált entitás osztályokon az Add metódus. Reménykedtem, hogy nem azt képzeli, majd én fogom megírni?! A Beta 2-ben még biztosan volt a Table<T> típusnak Add metódusa, most meg csak ezt kántálja a fordító:

'System.Data.Linq.Table<AccountRequest>' does not contain a definition for 'Add' and no extension method 'Add' accepting a first argument of type 'System.Data.Linq.Table<AccountRequest>' could be found (are you missing a using directive or an assembly reference?)

Megjegyzem az jópofa, hogy már itt is megjelentek az extension metódusok :)  Irány a gugli meg a nagy koppanás, hiszen a Visual Studio RC változat nem publikus, csak egy aránylag szűk kör kapta meg, így nem túl sok sikerrel kerestem arra, hogy breaking changes.

Kereskényi Roby kellett hozzá, hogy megtudjam, a Beta 2 után bizony átneveztek néhány metódust, mert a régi név nem vot egyértelmű:

  • Add --> InsertOnSubmit
  • AddAll --> InsertAllOnSubmit
  • Remove --> DeleteOnSubmit
  • RemoveAll --> DeleteAllOnSubmit

Így valóban egyértelműbb, hogy mikor mi történik, és talán nem fogjuk elfelejteni meghívni a SubmitChanges metódust sem. De ami még jobb, hogy az OnValidate partial method végre megkapja paraméterben, hogy mikor fut, még pedig egy enumeráció formájában:

partial void OnValidate( System.Data.Linq.ChangeAction action );

ahol a ChangeAction így fest:

  namespace System.Data.Linq {
    public enum ChangeAction {
      None = 0,
      Delete,
      Insert,
      Update
    }
  }

Nem hiába, olvasott embernek párja nincs! Különösen, ha Silverlightról bloggol, lehet kapaszkodni...



Balássy György (MS RD, ASP.NET MVP, MCTS)

Balássy György (MS RD, ASP.NET MVP, MCTS) Villamosmérnök, a BME Automatizálási és Alkalmazott Informatikai Tanszékén webportálok fejlesztését oktatja. 2000 óta foglalkozik a Microsoft .NET platformjával, melynek meghonosításában jelentős szerepet vállalt előadóként, konzulensként és A .NET Framework és programozása című könyv társszerzőjeként. Az MSDN Kompetencia Központon belül a Portál Technológiák Csoport vezetője, szakterülete web alapú rendszerek fejlesztése és üzemeltetése. 2004-ben Magyarországon elsőként kapta meg a Most Valuable Professional címet, majd 2005 óta a Microsoft magyarországi regionális igazgatója. Publikációi a Technet Magazinban, az MSDN Kompetencia Központ honlapján és szakmai blogjában olvashatóak.

2007.10.27. 17:52:12 | Permalink | Hozzászólások: 0 | Tárgyszavak: , , ,


  • SharePoint DCOM error 10016 @ WS2008 R2

    Balássy György (MS RD, ASP.NET MVP, MCTS) Korábban már írtam arról, hogy Windows SharePoint Services telepítése után az eseménynaplóban megjelenő barátságtalan 10016-os hibaüzenetektől hogyan lehet megszabadulni. Windows Server 2008 R2-n azonban még egy akadályt át kell ugranunk. Tovább »
  • OutputCache kikapcsolása POST esetén

    Dávid Zoltán Ha OutputCachet használsz ASP.NET-ben az utólagos teljesítményfokozásra, akkor jobb ha tudod, hogy alapértelmezetten nem csak a GET-ek, hanem a POST-ok válaszait is gyorsítótárazza (ráadásul külön-külön, erről Gincsai Gábor barátom tudna mesélni). Ebben az a kellemetlen, hogy a PostBackjeid valójában semmilyen eseményt nem váltanak ki szerveroldalon: nem fut le a Page_Load, nem futnak a gombok eseménykezelői stb. Én ez ellen így védekezek. Tovább »


Írja meg Ön is véleményét!


Hozzászólásokat csak regisztrált, bejelentkezett felhasználóktól tudunk elfogadni!

Hozzászólások