Sponsored By Aspose - File Format APIs for .NET

Aspose are the market leader of .NET APIs for file business formats – natively work with DOCX, XLSX, PPT, PDF, MSG, MPP, images formats and many more!

Architecting LINQ to SQL applications, part 4

Dynamic Queries

One question that arises from time to time is: how do I do dynamic queries in LINQ. The problem usually stems from allowing the users to generate search criteria, perhaps through a filter for a list for example. Because we cannot predict the combinations of values that the user will choose, LINQ, where we define our statements at compile time cannot really help us. So in the example below while we can search for all the customers in London, we don’t have any syntax like that in the bottom box, which somehow lets us evaluate an expression at run time.LINQ helps us with compile time expressions, but it is less help with run-time expressions.

So how do we deal with dynamic expressions?

 First, LINQ to SQL does have a get out of jail card, it’s called ExecuteSQL and it is provided by DataContext to let you do pass through against the Db. LINQ also helps alleviate some pain here: object materialization is supported, so we can still get LINQ to pull back objects for us.

TestDataContext context = new TestDataContext();

StringBuilder buffer = new StringBuilder(
 “select * from Customer where “);
           
for (int i = 0; i < listDictionary.Count; i++)
{
       buffer.AppendFormat(“{0} == {1}”, listDictionary.Keys[ i ], listDictionary.Values[ i ]);
}
IEnumerable<Customer> customer = context.ExecuteQuery<Customer>(buffer.ToString()); 
 

Of course the danger here is that we now have some SQL, which is expressed not in terms of the domain, but of the relational schema. So if we do this, we need to wrap out interaction with the DataContext here within a Data Mapper, or perhaps in this sub-case a service, and push it all the way out into the infrastructure layer.Whatever I say next, a lot of people will take this pragmatic way out. Go for your life.

Specification

NHibernate gives us a little language, HQL, which allows us to query our objects. The advantage is that HQL is expressed as a string, so we can compose it, and thus use it to provide dynamic query support. This gives it an advantage in this instance over LINQ. The downside is that it is never checked by the compiler, so errors are more expensive to find.

There a way to gain the benefits of composition, with the comfort of type checking. One solution is the Specification pattern, which I have blogged about before. To summarize that more lengthy post: a specification is a pattern for expressing a rule which you want to use to test an object. A specification is ultimately used to separate two orthogonal concerns: testing objects and the objects themselves.

What we want is something like below, where we combine criteria into an expression that we use to test items in a repository to produce a filtered result set.

ISpecification<Customer> customersInLondon =  new Specification<Customer>(c => c.City == “London”);
ISpecification<Customer> customersInUK  = new Specification<Customer>(c => c.City == “UK”);
ISpecification<Customer> customersInLondonUK  = customersInLondon.And(customersInUK); List<Customer> matchingCustomers  = customerRepository.FindBySpecification(customersInLondonUK);

We construct individual queries, or specifications, in a strongly typed fashion by using generics and lambda expressions. We make them composable, via the composite pattern, so we can and/or/not expressions as we build them.

public interface ISpecification<T>
{
    Expression<Func<T, bool>> Predicate {get;set;}
    ISpecification<T> And(ISpecification<T> other);
    bool IsSatisfiedBy(T customer);
    ISpecification<T> Not();
    ISpecification<T> Or(ISpecification<T> other);

We define an abstract base class that handles the work of combining specifications. The hard work of combining the lambda expressions depends on some expression tree magic over at my previous blog post:

abstract public class AbstractSpecification<T> : ISpecification<T>   
{       
    protected Expression<Func<T, bool>> predicate;
    public abstract bool IsSatisfiedBy(T value);
    public ISpecification<T> And(ISpecification<T> other)
    {
        return new AndSpecification<T>(this, other);
    }
}
This combined expression can replace the predicate in the where clause of our LINQ expression, because we are just passing an expression tree through to LINQ to SQL for evaluation:

public IEnumerable<Customer> FindBySpecification(ISpecification<Customer> specification)
{           
    IQueryable<Customer> customerQuery = from c in Customers select c;
    IQueryable<Customer> restrictedCustomerQuery  = customerQuery.Where<Customer>(specification.Predicate);
    return restrictedCustomerQuery.ToList();
}

But, like I say, a lot of folks will prefer the ExecuteQuery approach over messing with expression trees.

But my second piece of advice would be:

You can use ExecuteQuery to exercise your dynamic queries, but the call should be encapsulated in the infrastructure layer to keep SQL out of the domain. Where you have a significant requirement for dynamic queries, consider implementing the Specification pattern and using Expressions to integrate with LINQ

Next up, we’ll talk about how to build from the domain, rather than from the data, and how to markup your domain objects for persistence.

 

About Ian Cooper

Ian Cooper has over 18 years of experience delivering Microsoft platform solutions in government, healthcare, and finance. During that time he has worked for the DTi, Reuters, Sungard, Misys and Beazley delivering everything from bespoke enterpise solutions to 'shrink-wrapped' products to thousands of customers. Ian is a passionate exponent of the benefits of OO and Agile. He is test-infected and contagious. When he is not writing C# code he is also the and founder of the London .NET user group. http://www.dnug.org.uk
This entry was posted in Featured, LINQ. Bookmark the permalink. Follow any comments here with the RSS feed for this post.
  • Anonymous

    Heart of the Nightwing(With 30 days game time)
    Behold! The Recruit-A-Friend program has unleashed an all new reward mount—the swift and sleek Obsidian Nightwing. Unlike most other mounts, the Obsidian Nightwing is not a mount you summon, but rather a mount that you become, enabling you to take to the skies with a friend riding on your back. And who wouldn’t want to ride (or transform into) a winged panther? WoW Boe Items

    1.You will receive Recruit-A-Friend info from us after purchase, follow the steps of instruction, you will get the mount and free 30 days game time. 
    2.Estimated time: in 24 hours.
    The original address:http://www.raiditem.com/Buy-WoW-Mount-Hot-Mount-item-1392.html

  • Calebjunn
  • http://www.laptop-battery-accessories.com kevin

    The precious ideas you provided do help our team’s investigation for our company, thanks very much

  • http://www.oklaptopbattery.com kevin

    the precious ideas you provided do help our team’s investigation for our company, thanks.

  • http://www.oklaptopbattery.com Acer Laptop Battery

    the precious ideas you provided do help our team’s investigation for our company, thanks.

  • http://www.mahjonghub.com/ mahjong

    Looks like the author has massive awareness in the subject. Thanks you for the info.

  • http://www.mahjonghub.com/ mahjong

    Looks like the author has massive awareness in the subject. Thanks you for the info.

  • http://www.pickegg.com Wholesale gadgets

    Thank you for providing good information,Wholesale Electronics and Wholesale gadgets from pickegg.com, Pickegg.com is an online Wholesale

    Electronics store. Offers consumer electronics and electronic gadgets at best price

  • http://www.pickegg.com Wholesale gadgets

    Thank you for providing good information,Wholesale Electronics and Wholesale gadgets from pickegg.com, Pickegg.com is an online Wholesale

    Electronics store. Offers consumer electronics and electronic gadgets at best price

  • http://www.vibramfivefinger.info Vibram Five Fingers

    Really trustworthy blog. Please keep updating with great posts like this one. I have booked marked your site and am about to email it to a few friends of mine that I know would enjoy reading..
    http://www.vibramfivefinger.info Discount Vibram Five Fingers

  • http://www.oklaptopbattery.com Acer Laptop Battery

    very good article, thanks very much. but in general, the usefulness and significance is overwhelming.

  • http://www.oklaptopbattery.com Acer Laptop Battery

    you just earned yourself an entry in my feed reader, great blog

  • http://www.laptopadapterac.com laptop ac adapter

    Many thanks to the author. It is incomprehensible to me now, but in general, the usefulness and significance is overwhelming.

  • http://www.ismadeinchina.com Made in China

    Made in China

  • http://www.ed-stores.com Ed Hardy Tees

    This is a really good read for me.

    cheap Ed Hardy Clothing,Ed Hardy Tees,Ed Hardy Jeans: http://www.ed-stores.com

  • http://www.ed-stores.com Ed Hardy Tees

    cheap Ed Hardy Clothing,Ed Hardy Tees,Ed Hardy Jeans:

    http://www.ed-stores.com

  • http://www.ed-hardy.cc ed hardy on sale

    Hello ^^ I bookmarked this site. Thanks heaps for this!… if anyone else has anything, it would be much appreciated. Great website ed hardy clothing Links
    http://www.ed-hardy.cc wholesale ed hardy
    Enjoy!

  • http://www.feevoo.com laptop accessories

    good

  • http://www.udtek.com laptops accessories

    so much spam !

  • http://www.buysllinden.com www.buysllinden.com

    http://www.buysllinden.com
    allow noting ?
    fuck

  • http://www.hairstraightenerssale.com hairstraightenerssale

    Read the information provided here, I think I will enjoy frequent visits to the. ps:welcome to my site
    GHD

  • http://www.sportsjerseysales.com 123

    Read the information provided here, I think I will enjoy frequent visits to the. ps:welcome to my site
    NFL Jersey

  • http://goodlaptopbattery.spaces.live.com/ yokio
  • http://www.heartcongestive.com symptoms of congestive heart failure

    There is obviously a lot more than this. Would you mind telling me how long it took you to gather your content? Please come visit my site congestive heart failure symptoms when you got time.

  • http://www.symptomsgerd.com gerd symptoms

    Congratulations, you just earned yourself an entry in my feed reader, great blog. Please come visit my site "http://www.symptomsgerd.com ">symptoms of gerd when you got time.

  • http://www.glassesshop.com/special/detail/bifocal bifocals glasses
  • http://www.it-battery.com Roy
  • http://www.gamekoo.com/product/Rappelz_Rupees.html rappelz money

    You can buy gold on this website, it is so cheap and well

  • http://www.gamekoo.com/product/Scions_of_Fate_Gold.html buy sof gold

    you can also buy sof gold to continue the game, and than get good marks.

  • <a href="http://www.flooring-china.com">access floor</a>

    access flooring

  • http://www.fairsfestival.com events listing

    I found your site on google, great site, keep it up. Will return in the future. Submitted this post to Google News Reader. Feel free to check out my site event calendar listing when you got time.

  • http://www.centersyouth.com youth services

    I enjoyed reading your work! GREAT post! I looked around for this… but I found you! Anyway, would you mind if I threw up a backlink from my site? Please come visit my site youth organizations when you got time.

  • http://www.gamekoo.com/product/MIR2.html MIR2 gold

    good, I like, thanks.

  • http://www.ustexassanantonio.com San Antonio Business Directory

    You may have not intended to do so, but I think you have managed to express the state of mind that a lot of people are in. The sense of wanting to help, but not knowing how or where, is something a lot of us are going through. Please come visit my site Local Business Directory Of San Antonio U.S.A. when you got time.

  • http://www.businessesphiladelphia.com Philadelphia Business Directory

    I was thinking of looking up some of them newspaper websites, but am glad I came here instead. Although glad is not quite the right word… let me just say I needed this after the incessant chatter in the media, and am grateful to you for articulating something many of us are feeling – even from distant shores. Please come visit my site Local Business Directory Of Philadelphia U.S.A. when you got time.

  • http://www.businessesphiladelphia.com Philadelphia Business Directory

    I was thinking of looking up some of them newspaper websites, but am glad I came here instead. Although glad is not quite the right word… let me just say I needed this after the incessant chatter in the media, and am grateful to you for articulating something many of us are feeling – even from distant shores. Please come visit my site Local Business Directory Of Philadelphia U.S.A. when you got time.

  • http://www.michigandetroit.net Detroit Business Directory

    I can see that you are an expert at your field! I am launching a website soon, and your information will be very useful for me. Thanks for all your help and wishing you all the success in your business. Please come visit my site Local Business Directory Of Detroit U.S.A when you got time.

  • http://www.californiasanjose.info San Jose Business Directory

    This is just another reason why I like your website. I like your style of writing you tell your stories without out sending us to 5 other sites to complete the story. Please come visit my site Local Business Directory Of San Jose U.S.A. when you got time.

  • http://www.mmodo.com/product/Flyff_penya.html flyff penya

    It is what I want to find out.

  • http://www.californiabakersfield.com Bakersfield Business Directory

    I can see that you are an expert at your field! I am launching a website soon, and your information will be very useful for me. Thanks for all your help and wishing you all the success in your business. Please come visit my site Bakersfield Yellow Page Business Directory

  • http://www.anaheimcaguide.com Anaheim Business Directory

    You got a really useful blog I have been here reading for about an hour. I am a newbee and your success is very much an inspiration for me. Please come visit my site Anaheim Yellow Page Business Directory

  • http://www.Businesssantaana.com Santa Ana Business Directory

    I can see that you are an expert at your field! I am launching a website soon, and your information will be very useful for me. Thanks for all your help and wishing you all the success in your business. Please come visit my site Santa Ana Yellow Page Business Directory

  • http://www.oaklandcaclassifieds.com Oakland Business Directory

    This is just another reason why I like your website. I like your style of writing you tell your stories without out sending us to 5 other sites to complete the story. Please come visit my site Oakland Yellow Page Business Directory

  • http://www.guidesacramento.com Sacramento Business Directory

    I am not really sure if best practices have emerged around things like that, but I am sure that your great job is clearly identifed. I was wondering if you offer any subscription to your RSS feeds as I would be very interested and can’t find any link to subscribe here. Please come visit my site Sacramento Yellow Page Business Directory

  • http://www.fresnobusinessads.com Fresno Business Directory

    I was thinking of looking up some of them newspaper websites, but am glad I came here instead. Although glad is not quite the right word… let me just say I needed this after the incessant chatter in the media, and am grateful to you for articulating something many of us are feeling – even from distant shores. Please come visit my site Fresno Yellow Page Business Directory

  • http://www.businesseslongbeach.com Long Beach Business Directory

    You share valuable information and excellent design you got here! I would like to thank you for sharing your thoughts and time into the stuff you post!! Thumbs up. Please come visit my site Long Beach Yellow Page Business Directory

  • http://www.agenciesadoption.com Sandy Peterson

    What a fascinating article. I’m looking for a marketing expert to help with a project, could you help? Please come visit my site Adoption Business Directory when you got time.

  • http://www.agenciesadoption.com Sandy Peterson

    What a fascinating article. I’m looking for a marketing expert to help with a project, could you help? Please come visit my site Adoption Business Directory when you got time.

  • http://www.agenciesadoption.com Sandy Peterson

    What a fascinating article. I’m looking for a marketing expert to help with a project, could you help? Please come visit my site Adoption Business Directory when you got time.

  • http://www.agenciesadoption.com Sandy Peterson

    What a fascinating article. I’m looking for a marketing expert to help with a project, could you help? Please come visit my site Adoption Business Directory when you got time.

  • http://www.hallauditorium.com auditorium albuquerque convention center

    You may have not intended to do so, but I think you have managed to express the state of mind that a lot of people are in. The sense of wanting to help, but not knowing how or where, is something a lot of us are going through. Please come visit my site auditorium albuquerque convention when you got time.

  • http://www.hallauditorium.com convention services

    You may have not intended to do so, but I think you have managed to express the state of mind that a lot of people are in. The sense of wanting to help, but not knowing how or where, is something a lot of us are going through. Please come visit my site auditorium albuquerque convention center when you got time.

  • http://www.aiongold.org aion gold

    I really like your post, thanks for sharing.

  • http://www.gamekoo.com/product/Last_Chaos_gold.html last chaos gold

    I really like your post, thanks for sharing.

  • http://www.gamekoo.com/product/Holic_Online_Gold.html holic online money

    I really like your post, thanks for sharing.

  • http://www.gamekoo.com/product/RuneScape_II_gold.html cheap rs gold

    the site is good

  • http://www.gamekoo.com/product/RuneScape_II_gold.html runescape gold

    the site is good

  • http://www.virgame.com/2moons-c-75.html 2moons gold

    My brother often go to the internet bar to buy 2moons gold and play it.

  • http://www.sunvalleyus.com rose

    good

  • http://www.vi4s.com/product/Maple_Story_Mesos.html maple story mesos

    or you buy maplestory mesos. If you get maple story mesos, you can continue this game.

  • sxq2823

    “These incidents were isolated incidents that happened weeks ago,” Salzer told the Globe.
    [URL=http://www.wowtao.de]wow gold[/URL]”We’re no different from any other high school.
    We have 1,700 students with a variety of opinions and means of expressing these opinions.
    [URL=http://www.wowtao.de]wow gold[/URL] It was disappointing to have someone cross the
    line and inappropriately cross student-teacher boundaries.”

  • http://wow.gmevive.com wow gold

    WoW Gold | World of Warcraft Gold | WoW Power Leveling | Cheap WoW Gold | Cheapest WoW Gold | Buy Cheap WoW Gold | Lineage 2 Adena | Lineage 2 Power Leveling | Lineage 2 Accounts | Lineage 2 CD Key | Warhammer gold | Warhammer Online gold | Warhammer Power leveling | Warhammer Online Power Leveling | Warhammer CD Key | Warhammer Online CD Key | Aion gold | Aion Power Leveling | Aion CD Key | Aion Accounts | Age of Conan gold | AoC gold | Age of Conan Power Leveling | Age of Conan Leveling | Age of Conan CD Key | AoC CD Key | LoTRO Gold | LoTRO Power Leveling | LoTRO CD Key | Lord of the Rings Gold | Lord of the Rings CD Key | LoTRO Accounts | Chronicles of Spellborn Gold | Chronicles of Spellborn Power Leveling | Chronicles of Spellborn CD key | atlantica online gold | atlantica gold | atlantica power leveling | atlantica online power leveling | atlantica cd key | atlantica accounts | darkfall gold | darkfall accounts | darkfall power leveling | darkfall cd key | silkroad gold | silkroad online gold | silkroad power leveling | runes of magic gold | runes of magic power leveling | runes of magic accounts | Maple Story Mesos | Maple Story Power Leveling | EVE ISK | EVE Online ISK | EVE Power Leveling | EVE CD Key | EVE Online CD Key | EverQuest II Platinum | EverQuest 2 Platinum | EQ2 Gold | EverQuest 2 Power Leveling | EQ2 Power Leveling | EverQuest 2 CD Key | EverQuest II CD Key | EQ2 CD Key | EverQuest II Accounts | EQ2 Accounts | EverQuest 2 Accounts | FFXI Gil | FFXI Online Gil | Final Fantasy XI Gil | FFXI Power Leveling | Final Fantasy XI Power Leveling | FFXI CD Key | Final Fantasy XI CD Key

    wow gold | wow power leveling | cheap wow gold | buy wow gold | world of warcraft gold | EVE ISK | EVE Power Leveling | EVE CD Key | silkroad gold | silkroad power leveling | Final Fantasy XI Gil | FFXI Gil | FFXI Power Leveling | Final Fantasy XI Power Leveling | FFXI CD Key | Final Fantasy XI CD Key | runes of magic gold | runes of magic accounts | runes of magic power leveling | runes of magic cd key | EverQuest 2 Platinum | EverQuest 2 Gold | EQ2 Gold | EverQuest 2 Power Leveling | EverQuest 2 CD Key | EverQuest 2 Accounts|

    [url=http://www.gamevive.com/]WoW Gold[/url] | [url=http://www.gamevive.com/]World of Warcraft Gold[/url] | [url=http://www.gamevive.com/]WoW Power Leveling[/url] | [url=http://wow.gamevive.com/]Cheap WoW Gold[/url] | [url=http://wow.gamevive.com/]Cheapest WoW Gold[/url] | [url=http://wow.gamevive.com/]Buy Cheap WoW Gold[/url] | [url=http://www.gamevive.com/lineage2/Lineage-2-Adena/Lineage-2-Adena.html]Lineage 2 Adena[/url] | [url=http://www.gamevive.com/lineage2/Lineage2-Power-Leveling/Lineage2-Power-Leveling.html]Lineage 2 Power Leveling[/url] | [url=http://www.gamevive.com/lineage2/Lineage-2-Adena/cheap-lineage2-account.html]Lineage 2 Accounts[/url] | [url=http://www.gamevive.com/lineage2/Lineage2-CD-Key/Lineage2-CD-Key.html]Lineage 2 CD Key[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-gold/Warhammer-gold.html]Warhammer gold[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-gold/Warhammer-gold.html]Warhammer Online gold[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-power-leveling/Cheap-Warhammer-power-leveling.html]Warhammer Power leveling[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-power-leveling/Cheap-Warhammer-power-leveling.html]Warhammer Online Power Leveling[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-CD-key/Warhammer-CD-key.html]Warhammer CD Key[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-CD-key/Warhammer-CD-key.html]Warhammer Online CD Key[/url] | [url=http://www.gamevive.com/Aion/Aion-gold/Aion-gold.html]Aion gold[/url] | [url=http://www.gamevive.com/Aion/Aion-power-leveling/Cheap-Aion-power-leveling.html]Aion Power Leveling[/url] | [url=http://www.gamevive.com/Aion/Aion-CD-key/Aion-CD-key.html]Aion CD Key[/url] | [url=http://www.gamevive.com/aion-accounts.php]Aion Accounts[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-Gold/Age-of-Conan-Gold.html]Age of Conan gold[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-Gold/Age-of-Conan-Gold.html]AoC gold[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-power-leveling/Cheap-Age-of-Conan-power-leveling.html]Age of Conan Power Leveling[/url] | [url=http://www.gamevive.com/Age-of-Conan-EU/Age-of-Conan-EU-power-leveling/Cheap-Age-of-Conan-EU-power-leveling.html]Age of Conan Leveling[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-conan-CD-key/Cheap-Age-of-Conan-CD-key.html]Age of Conan CD Key[/url] | [url=http://www.gamevive.com/Age-of-Conan-EU/Age-of-conan-EU-CD-key/Cheap-Age-of-Conan-EU-CD-key.html]AoC CD Key[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Gold/Lotro-Gold.html]LoTRO Gold[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Power-Leveling/Lotro-Power-Leveling.html]LoTRO Power Leveling[/url] | [url=http://www.gamevive.com/Lotro/Lotro-CD-Key/Lotro-CD-Key.html]LoTRO CD Key[/url] | [url=http://www.gamevive.com/Lotro-EU/Cheap-Lotro-Gold/Lotro-Gold.html]Lord of the Rings Gold[/url] | [url=http://www.gamevive.com/Lotro-EU/Cheap-Lotro-CD-Key/Cheap-Lotro-CD-Key.html]Lord of the Rings CD Key[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Accounts/Cheap-Lotro-Accounts.html]LoTRO Accounts[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-Gold-eu/Cheap-spellborn-Gold-eu.html]Chronicles of Spellborn Gold[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-power-leveling-eu/Cheap-spellborn-power-leveling-eu.html]Chronicles of Spellborn Power Leveling[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-CD-key-eu/spellborn-CD-key-eu.html]Chronicles of Spellborn CD key[/url] | [url=http://www.gamevive.com/atlantica/atlantica-gold/atlantica-gold.html]atlantica online gold[/url] | [url=http://www.gamevive.com/atlantica/atlantica-gold/atlantica-gold.html]atlantica gold[/url] | [url=http://www.gamevive.com/atlantica/atlantica-power-leveling/Cheap-atlantica-power-leveling.html]atlantica power leveling[/url] | [url=http://www.gamevive.com/atlantica/atlantica-power-leveling/Cheap-atlantica-power-leveling.html]atlantica online power leveling[/url] | [url=http://www.gamevive.com/atlantica/atlantica-CD-key/atlantica-CD-key.html]atlantica cd key[/url] | [url=http://www.gamevive.com/atlantica/atlantica-Account/Cheap-atlantica-Account.html]atlantica accounts[/url] | [url=http://www.gamevive.com/darkfall/darkfall-gold/darkfall-gold.html]darkfall gold[/url] | [url=http://www.gamevive.com/darkfall/darkfall-Account/Cheap-darkfall-Account.html]darkfall accounts[/url] | [url=http://www.gamevive.com/darkfall/darkfall-power-leveling/Cheap-darkfall-power-leveling.html]darkfall power leveling[/url] | [url=http://www.gamevive.com/darkfall/darkfall-CD-key/darkfall-CD-key.html]darkfall cd key[/url] | [url=http://www.gamevive.com/silkroad/silkroad-gold/silkroad-gold.html]silkroad gold[/url] | [url=http://www.gamevive.com/silkroad/silkroad-Gold/Cheap-silkroad-Gold.html]silkroad online gold[/url] | [url=http://www.gamevive.com/silkroad/silkroad-power-leveling/Cheap-silkroad-power-leveling.html]silkroad power leveling[/url] | [url=http://www.gamevive.com/runes-us/runes-gold-us/runes-gold-us.html]runes of magic gold[/url] | [url=http://www.gamevive.com/runes-us/runes-power-leveling-us/cheap-runes-power-leveling-us.html]runes of magic power leveling[/url] | [url=http://www.gamevive.com/runes-us/runes-account-us/Cheap-runes-account-us.html]runes of magic accounts[/url] | [url=http://www.gamevive.com/mstory/mstory-mesos/mstory-mesos.html]Maple Story Mesos[/url] | [url=http://www.gamevive.com/mstory/mstory-power-leveling/Cheap-mstory-power-leveling.html]Maple Story Power Leveling[/url] | [url=http://www.gamevive.com/eve/eve-isk/eve-isk.html]EVE ISK[/url] | [url=http://www.gamevive.com/eve/eve-isk/cheap-eve-isk.html]EVE Online ISK[/url] | [url=http://www.gamevive.com/eve/eve-power-leveling/cheap-eve-power-leveling.html]EVE Power Leveling[/url] | [url=http://www.gamevive.com/eve/eve-CD-key/eve-CD-key.html]EVE CD Key[/url] | [url=http://www.gamevive.com/eve/eve-CD-key/eve-CD-key.html]EVE Online CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/everquest-gold.html]EverQuest II Platinum[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/cheap-everquest-gold.html]EverQuest 2 Platinum[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/everquest-Antonia%20Bayle-47-2431-Evil.html]EQ2 Gold[/url] | [url=http://www.gamevive.com/everquest/everquest-power-leveling/Cheap-everquest-power-leveling.html]EverQuest 2 Power Leveling[/url] | [url=http://www.gamevive.com/everquest/everquest-power-leveling/Cheap-everquest-power-leveling.html]EQ2 Power Leveling[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EverQuest 2 CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EverQuest II CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EQ2 CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Cheap-everquest-Account.html]EverQuest II Accounts[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Cheap-everquest-Account.html]EQ2 Accounts[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Antonia%20Bayle-47-2431.html]EverQuest 2 Accounts[/url] | [url=http://www.gamevive.com/final/final-gil/final-gil.html]FFXI Gil[/url] | [url=http://www.gamevive.com/final/final-gil/cheap-final-gil.html]FFXI Online Gil[/url] | [url=http://www.gamevive.com/final/cheap-final-gil/final-Alexander-45-2338.html]Final Fantasy XI Gil[/url] | [url=http://www.gamevive.com/final/final-power-leveling/Cheap-final-power-leveling.html]FFXI Power Leveling[/url] | [url=http://www.gamevive.com/final/final-power-leveling/Cheap-final-power-leveling.html]Final Fantasy XI Power Leveling[/url] | [url=http://www.gamevive.com/final/final-CD-key/final-CD-key.html]FFXI CD Key[/url] | [url=http://www.gamevive.com/final/final-CD-key/final-CD-key.html]Final Fantasy XI CD Key[/url]

    [url=http://www.gmbar.com/]wow gold[/url] | [url=http://www.gmbar.com/]wow power leveling[/url] | [url=http://www.gmbar.com/]cheap wow gold[/url] | [url=http://www.gmbar.com/]buy wow gold[/url] | [url=http://www.gmbar.com/]world of warcraft gold[/url] | [url=http://www.gmbar.com/cheap-eve-isk.php]EVE ISK[/url] | [url=http://www.gmbar.com/eve-power-leveling.php]EVE Power Leveling[/url] | [url=http://www.gmbar.com/eve-cdkey.php]EVE CD Key[/url] | [url=http://www.gmbar.com/cheap-silk-load-gold.php]silkroad gold[/url] | [url=http://www.gmbar.com/silkroad-power-leveling.php?g_id=11]silkroad power leveling[/url] | [url=http://www.gmbar.com/cheap-fin-gil.php]Final Fantasy XI Gil[/url] | [url=http://www.gmbar.com/cheap_fin_gil.php]FFXI Gil[/url] | [url=http://www.gmbar.com/fin-power-leveling.php]FFXI Power Leveling[/url] | [url=http://www.gmbar.com/fin-power-leveling.php]Final Fantasy XI Power Leveling[/url] | [url=http://www.gmbar.com/fin-cdkey.php]FFXI CD Key[/url] | [url=http://www.gmbar.com/fin-cdkey.php]Final Fantasy XI CD Key[/url] | [url=http://www.gmbar.com/cheap-run-gold-us.php]runes of magic gold[/url] | [url=http://www.gmbar.com/run-accounts-us.php]runes of magic accounts[/url] | [url=http://www.gmbar.com/run-power-leveling-us.php]runes of magic power leveling[/url] | [url=http://www.gmbar.com/run-cdkey-us.php]runes of magic cd key[/url] | [url=http://www.gmbar.com/cheap-eq2-gold.php]EverQuest 2 Platinum[/url] | [url=http://www.gmbar.com/cheap_eq2_gold.php]EverQuest 2 Gold[/url] | [url=http://www.gmbar.com/cheap_eq2_gold.php]EQ2 Gold[/url] | [url=http://www.gmbar.com/eq2-power-leveling.php]EverQuest 2 Power Leveling[/url] | [url=http://www.gmbar.com/eq2-cdkey.php]EverQuest 2 CD Key[/url] | [url=http://www.gmbar.com/eq2-account.php]EverQuest 2 Accounts[/url]

  • http://wow.gmevive.com wow gold

    WoW Gold | World of Warcraft Gold | WoW Power Leveling | Cheap WoW Gold | Cheapest WoW Gold | Buy Cheap WoW Gold | Lineage 2 Adena | Lineage 2 Power Leveling | Lineage 2 Accounts | Lineage 2 CD Key | Warhammer gold | Warhammer Online gold | Warhammer Power leveling | Warhammer Online Power Leveling | Warhammer CD Key | Warhammer Online CD Key | Aion gold | Aion Power Leveling | Aion CD Key | Aion Accounts | Age of Conan gold | AoC gold | Age of Conan Power Leveling | Age of Conan Leveling | Age of Conan CD Key | AoC CD Key | LoTRO Gold | LoTRO Power Leveling | LoTRO CD Key | Lord of the Rings Gold | Lord of the Rings CD Key | LoTRO Accounts | Chronicles of Spellborn Gold | Chronicles of Spellborn Power Leveling | Chronicles of Spellborn CD key | atlantica online gold | atlantica gold | atlantica power leveling | atlantica online power leveling | atlantica cd key | atlantica accounts | darkfall gold | darkfall accounts | darkfall power leveling | darkfall cd key | silkroad gold | silkroad online gold | silkroad power leveling | runes of magic gold | runes of magic power leveling | runes of magic accounts | Maple Story Mesos | Maple Story Power Leveling | EVE ISK | EVE Online ISK | EVE Power Leveling | EVE CD Key | EVE Online CD Key | EverQuest II Platinum | EverQuest 2 Platinum | EQ2 Gold | EverQuest 2 Power Leveling | EQ2 Power Leveling | EverQuest 2 CD Key | EverQuest II CD Key | EQ2 CD Key | EverQuest II Accounts | EQ2 Accounts | EverQuest 2 Accounts | FFXI Gil | FFXI Online Gil | Final Fantasy XI Gil | FFXI Power Leveling | Final Fantasy XI Power Leveling | FFXI CD Key | Final Fantasy XI CD Key

    wow gold | wow power leveling | cheap wow gold | buy wow gold | world of warcraft gold | EVE ISK | EVE Power Leveling | EVE CD Key | silkroad gold | silkroad power leveling | Final Fantasy XI Gil | FFXI Gil | FFXI Power Leveling | Final Fantasy XI Power Leveling | FFXI CD Key | Final Fantasy XI CD Key | runes of magic gold | runes of magic accounts | runes of magic power leveling | runes of magic cd key | EverQuest 2 Platinum | EverQuest 2 Gold | EQ2 Gold | EverQuest 2 Power Leveling | EverQuest 2 CD Key | EverQuest 2 Accounts|

    [url=http://www.gamevive.com/]WoW Gold[/url] | [url=http://www.gamevive.com/]World of Warcraft Gold[/url] | [url=http://www.gamevive.com/]WoW Power Leveling[/url] | [url=http://wow.gamevive.com/]Cheap WoW Gold[/url] | [url=http://wow.gamevive.com/]Cheapest WoW Gold[/url] | [url=http://wow.gamevive.com/]Buy Cheap WoW Gold[/url] | [url=http://www.gamevive.com/lineage2/Lineage-2-Adena/Lineage-2-Adena.html]Lineage 2 Adena[/url] | [url=http://www.gamevive.com/lineage2/Lineage2-Power-Leveling/Lineage2-Power-Leveling.html]Lineage 2 Power Leveling[/url] | [url=http://www.gamevive.com/lineage2/Lineage-2-Adena/cheap-lineage2-account.html]Lineage 2 Accounts[/url] | [url=http://www.gamevive.com/lineage2/Lineage2-CD-Key/Lineage2-CD-Key.html]Lineage 2 CD Key[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-gold/Warhammer-gold.html]Warhammer gold[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-gold/Warhammer-gold.html]Warhammer Online gold[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-power-leveling/Cheap-Warhammer-power-leveling.html]Warhammer Power leveling[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-power-leveling/Cheap-Warhammer-power-leveling.html]Warhammer Online Power Leveling[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-CD-key/Warhammer-CD-key.html]Warhammer CD Key[/url] | [url=http://www.gamevive.com/Warhammer/Warhammer-CD-key/Warhammer-CD-key.html]Warhammer Online CD Key[/url] | [url=http://www.gamevive.com/Aion/Aion-gold/Aion-gold.html]Aion gold[/url] | [url=http://www.gamevive.com/Aion/Aion-power-leveling/Cheap-Aion-power-leveling.html]Aion Power Leveling[/url] | [url=http://www.gamevive.com/Aion/Aion-CD-key/Aion-CD-key.html]Aion CD Key[/url] | [url=http://www.gamevive.com/aion-accounts.php]Aion Accounts[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-Gold/Age-of-Conan-Gold.html]Age of Conan gold[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-Gold/Age-of-Conan-Gold.html]AoC gold[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-Conan-power-leveling/Cheap-Age-of-Conan-power-leveling.html]Age of Conan Power Leveling[/url] | [url=http://www.gamevive.com/Age-of-Conan-EU/Age-of-Conan-EU-power-leveling/Cheap-Age-of-Conan-EU-power-leveling.html]Age of Conan Leveling[/url] | [url=http://www.gamevive.com/Age-of-Conan/Age-of-conan-CD-key/Cheap-Age-of-Conan-CD-key.html]Age of Conan CD Key[/url] | [url=http://www.gamevive.com/Age-of-Conan-EU/Age-of-conan-EU-CD-key/Cheap-Age-of-Conan-EU-CD-key.html]AoC CD Key[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Gold/Lotro-Gold.html]LoTRO Gold[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Power-Leveling/Lotro-Power-Leveling.html]LoTRO Power Leveling[/url] | [url=http://www.gamevive.com/Lotro/Lotro-CD-Key/Lotro-CD-Key.html]LoTRO CD Key[/url] | [url=http://www.gamevive.com/Lotro-EU/Cheap-Lotro-Gold/Lotro-Gold.html]Lord of the Rings Gold[/url] | [url=http://www.gamevive.com/Lotro-EU/Cheap-Lotro-CD-Key/Cheap-Lotro-CD-Key.html]Lord of the Rings CD Key[/url] | [url=http://www.gamevive.com/Lotro/Lotro-Accounts/Cheap-Lotro-Accounts.html]LoTRO Accounts[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-Gold-eu/Cheap-spellborn-Gold-eu.html]Chronicles of Spellborn Gold[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-power-leveling-eu/Cheap-spellborn-power-leveling-eu.html]Chronicles of Spellborn Power Leveling[/url] | [url=http://www.gamevive.com/spellborn-eu/spellborn-CD-key-eu/spellborn-CD-key-eu.html]Chronicles of Spellborn CD key[/url] | [url=http://www.gamevive.com/atlantica/atlantica-gold/atlantica-gold.html]atlantica online gold[/url] | [url=http://www.gamevive.com/atlantica/atlantica-gold/atlantica-gold.html]atlantica gold[/url] | [url=http://www.gamevive.com/atlantica/atlantica-power-leveling/Cheap-atlantica-power-leveling.html]atlantica power leveling[/url] | [url=http://www.gamevive.com/atlantica/atlantica-power-leveling/Cheap-atlantica-power-leveling.html]atlantica online power leveling[/url] | [url=http://www.gamevive.com/atlantica/atlantica-CD-key/atlantica-CD-key.html]atlantica cd key[/url] | [url=http://www.gamevive.com/atlantica/atlantica-Account/Cheap-atlantica-Account.html]atlantica accounts[/url] | [url=http://www.gamevive.com/darkfall/darkfall-gold/darkfall-gold.html]darkfall gold[/url] | [url=http://www.gamevive.com/darkfall/darkfall-Account/Cheap-darkfall-Account.html]darkfall accounts[/url] | [url=http://www.gamevive.com/darkfall/darkfall-power-leveling/Cheap-darkfall-power-leveling.html]darkfall power leveling[/url] | [url=http://www.gamevive.com/darkfall/darkfall-CD-key/darkfall-CD-key.html]darkfall cd key[/url] | [url=http://www.gamevive.com/silkroad/silkroad-gold/silkroad-gold.html]silkroad gold[/url] | [url=http://www.gamevive.com/silkroad/silkroad-Gold/Cheap-silkroad-Gold.html]silkroad online gold[/url] | [url=http://www.gamevive.com/silkroad/silkroad-power-leveling/Cheap-silkroad-power-leveling.html]silkroad power leveling[/url] | [url=http://www.gamevive.com/runes-us/runes-gold-us/runes-gold-us.html]runes of magic gold[/url] | [url=http://www.gamevive.com/runes-us/runes-power-leveling-us/cheap-runes-power-leveling-us.html]runes of magic power leveling[/url] | [url=http://www.gamevive.com/runes-us/runes-account-us/Cheap-runes-account-us.html]runes of magic accounts[/url] | [url=http://www.gamevive.com/mstory/mstory-mesos/mstory-mesos.html]Maple Story Mesos[/url] | [url=http://www.gamevive.com/mstory/mstory-power-leveling/Cheap-mstory-power-leveling.html]Maple Story Power Leveling[/url] | [url=http://www.gamevive.com/eve/eve-isk/eve-isk.html]EVE ISK[/url] | [url=http://www.gamevive.com/eve/eve-isk/cheap-eve-isk.html]EVE Online ISK[/url] | [url=http://www.gamevive.com/eve/eve-power-leveling/cheap-eve-power-leveling.html]EVE Power Leveling[/url] | [url=http://www.gamevive.com/eve/eve-CD-key/eve-CD-key.html]EVE CD Key[/url] | [url=http://www.gamevive.com/eve/eve-CD-key/eve-CD-key.html]EVE Online CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/everquest-gold.html]EverQuest II Platinum[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/cheap-everquest-gold.html]EverQuest 2 Platinum[/url] | [url=http://www.gamevive.com/everquest/everquest-gold/everquest-Antonia%20Bayle-47-2431-Evil.html]EQ2 Gold[/url] | [url=http://www.gamevive.com/everquest/everquest-power-leveling/Cheap-everquest-power-leveling.html]EverQuest 2 Power Leveling[/url] | [url=http://www.gamevive.com/everquest/everquest-power-leveling/Cheap-everquest-power-leveling.html]EQ2 Power Leveling[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EverQuest 2 CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EverQuest II CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-CD-key/everquest-CD-key.html]EQ2 CD Key[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Cheap-everquest-Account.html]EverQuest II Accounts[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Cheap-everquest-Account.html]EQ2 Accounts[/url] | [url=http://www.gamevive.com/everquest/everquest-Account/Antonia%20Bayle-47-2431.html]EverQuest 2 Accounts[/url] | [url=http://www.gamevive.com/final/final-gil/final-gil.html]FFXI Gil[/url] | [url=http://www.gamevive.com/final/final-gil/cheap-final-gil.html]FFXI Online Gil[/url] | [url=http://www.gamevive.com/final/cheap-final-gil/final-Alexander-45-2338.html]Final Fantasy XI Gil[/url] | [url=http://www.gamevive.com/final/final-power-leveling/Cheap-final-power-leveling.html]FFXI Power Leveling[/url] | [url=http://www.gamevive.com/final/final-power-leveling/Cheap-final-power-leveling.html]Final Fantasy XI Power Leveling[/url] | [url=http://www.gamevive.com/final/final-CD-key/final-CD-key.html]FFXI CD Key[/url] | [url=http://www.gamevive.com/final/final-CD-key/final-CD-key.html]Final Fantasy XI CD Key[/url]

    [url=http://www.gmbar.com/]wow gold[/url] | [url=http://www.gmbar.com/]wow power leveling[/url] | [url=http://www.gmbar.com/]cheap wow gold[/url] | [url=http://www.gmbar.com/]buy wow gold[/url] | [url=http://www.gmbar.com/]world of warcraft gold[/url] | [url=http://www.gmbar.com/cheap-eve-isk.php]EVE ISK[/url] | [url=http://www.gmbar.com/eve-power-leveling.php]EVE Power Leveling[/url] | [url=http://www.gmbar.com/eve-cdkey.php]EVE CD Key[/url] | [url=http://www.gmbar.com/cheap-silk-load-gold.php]silkroad gold[/url] | [url=http://www.gmbar.com/silkroad-power-leveling.php?g_id=11]silkroad power leveling[/url] | [url=http://www.gmbar.com/cheap-fin-gil.php]Final Fantasy XI Gil[/url] | [url=http://www.gmbar.com/cheap_fin_gil.php]FFXI Gil[/url] | [url=http://www.gmbar.com/fin-power-leveling.php]FFXI Power Leveling[/url] | [url=http://www.gmbar.com/fin-power-leveling.php]Final Fantasy XI Power Leveling[/url] | [url=http://www.gmbar.com/fin-cdkey.php]FFXI CD Key[/url] | [url=http://www.gmbar.com/fin-cdkey.php]Final Fantasy XI CD Key[/url] | [url=http://www.gmbar.com/cheap-run-gold-us.php]runes of magic gold[/url] | [url=http://www.gmbar.com/run-accounts-us.php]runes of magic accounts[/url] | [url=http://www.gmbar.com/run-power-leveling-us.php]runes of magic power leveling[/url] | [url=http://www.gmbar.com/run-cdkey-us.php]runes of magic cd key[/url] | [url=http://www.gmbar.com/cheap-eq2-gold.php]EverQuest 2 Platinum[/url] | [url=http://www.gmbar.com/cheap_eq2_gold.php]EverQuest 2 Gold[/url] | [url=http://www.gmbar.com/cheap_eq2_gold.php]EQ2 Gold[/url] | [url=http://www.gmbar.com/eq2-power-leveling.php]EverQuest 2 Power Leveling[/url] | [url=http://www.gmbar.com/eq2-cdkey.php]EverQuest 2 CD Key[/url] | [url=http://www.gmbar.com/eq2-account.php]EverQuest 2 Accounts[/url]

  • http://www.laptop-batteries.com.au/ laptopbattery

    Welcome to online laptop battery store, we offer high quality laptop batteries: Sony laptop battery, TOSHIBA laptop battery, Dell laptop battery, Acer laptop battery, Compaq laptop battery, HP laptop battery … … … http://www.laptop-batteries.com.au/ Your need,is our eternal pursuit; Your satisfaction,is our high honour; Thank you for your support . http://www.power-tool-battery.com/

  • http://wscb998@163.com fengyun00

    When the Wow Gold wolf finally found the Buy Wow Goldhole in the chimney he crawled wow gold cheap down and KERSPLASH right into that kettle of water and that was cheapest wow gold the end of his troubles with the big bad wolf.

    The next day the cheap wow gold cheapest wow gold little pig invited his mother over . She said “You see it is just as I told you. The way to gdpchinaget along in the world is to do world of warcraft gold things as well as you can.” Fortunately for that little pig, he meinwowgold learned that lesson. And he just lived happily ever after!

  • http://www.mmoinn.com wow gold

    Buy cheapest wow gold , mmoinn is your best choice! There is no other place than the mmoinn wow Gold Coast . Trading is so surprisingly fast and simple.

  • http://www.wowgoldone.com/ cheap wow gold

    If you are cheap wow gold trying any unknown cheats to earn gold, you would cheapest wow gold face some problem and your account will be black out. So don’t try to wow gold cheap find cheats instead try to wow7gold follow the guideline of world of warcraft. These tips could euwowgoldwork as gold cheat and can help a lot to earn gold and money. World of Warcraft is the most exiting online game and while Playing the game most of the players struggle ogpal to earn a lot of gold.

    Most of the players World Of Warcraft Goldtry search cheat code for this game to earn gold. This article will help xowow you a lot to earn more and more gold.The best way to earn gold in this online game is by going through the guidelines wow gold for saleand other information about wowgold4europethe game that are available on the internet .

  • http://www.gameim.com/product/Warhammer_Online__gold.html buy warhammer gold

    I like play online game.gold

  • http://www.mmoinn.com wow gold

    Players are to enjoy wowspa.com buy wow gold , five minutes, they can gain more of the cheap wow gold and wow power leveling . At wowspa.com trade both safe and fast!

  • http://www.gameim.com/product/Maple_Story_Mesos.html maple mesos

    this is so good

  • http://www.forvault.com wow gold

    asdasd

  • http://www.gameim.com/product/World_of_Warcraft_-_US_Gold.html World of Warcraft Gold

    I like play online game, I also buy wow gold and wow gold, the World of Warcraft Gold is very cheap, and use the warcraft gold can buy many things, I like cheap wow gold, thanks, it is very good.

  • http://www.adapterlist.com laptop battery

    I got the right info about toshiba portege 4000 battery on
    http://www.adapterlist.com/toshiba/portege-4000.htm toshiba portege 4000 battery ,i sure it will fit my notebook .

  • http://hilinda.mysinablog.com/ hrhrtht
  • http://www.game4power.com buy wow gold

    WoW shares many wow gold of its features with previously launched games. Essentially, you battle with monsters and traverse the countryside, by yourself or as a team, find challenging tasks, and go on to higher cheap wow gold levels as you gain skill and experience. In the course of your journey, you will be gaining new powers that are increased as your skill rating goes up. All the same, in terms of its features and quality, that is a ture stroy for this.WoW is far ahead of all other games of the genre the

  • http://www.game4power.com buy wow gold

    WoW shares many wow gold of its features with previously launched games. Essentially, you battle with monsters and traverse the countryside, by yourself or as a team, find challenging tasks, and go on to higher cheap wow gold levels as you gain skill and experience. In the course of your journey, you will be gaining new powers that are increased as your skill rating goes up. All the same, in terms of its features and quality, that is a ture stroy for this.WoW is far ahead of all other games of the genre the wow power leveling game undoubtedly is in a league of its own and playing it is another experience altogether.
    Even though WoW is a wow gold cheap rather complicated game, the controls and interface are done in buy warhammer gold such a way that you don’t feel the complexity. A good feature of the game is that it buy wow items does not put off people with lengthy manuals. The instructions cannot be simpler and the pop up tips can help you start playing the game buy cheap world of warcraft gold immediately. If on the other hand, you need a detailed manual, the instructions are there for you to access. Buy wow gold in this site,good for you ,WoW Gold, BUY WOW GOLD.

  • http://www.wowgoldbag.fr wow gold

    China’s capital market[URL=http://www.wowgoldbag.fr]wow gold[/URL]in 2008 can be used[URL=http://www.tbcgold.fr]wow gold[/URL]to describe the ups and downs[URL=http://www.psii.org]wow gold[/URL]launched a signature[URL=http://www.wowgold.ws]wow gold[/URL]campaign in the country [URL=http://www.wowgoldkaufen.com]wow gold[/URL]condemned the SAIC[URL=http://www.wowtao.fr]wow gold[/URL]and for compensation.

  • wow gold

    China’s capital market in 2008 can bewow goldused to describe the ups and downs and lookingwow goldforward wow goldlaunched a signaturewow gold campaign in the countrywow gold condemned thewow goldSAIC and for compensationto the new year capital markets,

  • http://inwowgold@inwowgold.com inwowgold

    happy new yearwow power leveling

  • http://www.game4power.com buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.buy wow gold from our site ,you’ll get more surprises!

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their localworld of warcraft goldwatering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.
    buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.buy wow gold from our site ,you’ll get more surprises!

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their local

    world of warcft gold

    watering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.

    buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.

    cheap wow gold

    The agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,

    buy wow items

    as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,

    wow power leveling

    the Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.

    buy wow gold

    from our site ,you’ll get more surprises!

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their local

    world of warcft gold

    watering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.

    buy wow gold

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their local

    world of warcft gold

    watering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.

    buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.

    cheap wow gold

    The agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,

    buy wow items

    as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,

    wow power leveling

    the Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.

    buy wow gold

    from our site ,you’ll get more surprises!

  • http://www.game4power.com buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.buy wow gold from our site ,you’ll get more surprises!href=”http://www.game4power.com/”>buy wow gold from our site ,you’ll get more surprises!

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their localworld of warcft goldwatering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.
    buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.buy wow gold from our site ,you’ll get more surprises!

  • battery

    the most convenient and cheap replacement battery online shop in uk. We specialize in http://www.batteryfast.com laptop batteries,laptop AC adapters. All of batteries are brand new, with the excellent service from our customer service team, you can feel free to purchase on laptop battery!

    I find the website laptop batteries,laptop AC adapters. All our products are brand new, with the excellent service from our laptop battery http://www.batterygoshop.co.uk of customer service team.

    the most convenient and cheap replacement battery online shop in uk. We specialize in http://www.batteryfast.co.uk laptop batteries,laptop AC adapters. All our products are brand new, with the excellent service from our customer service team.

    the most convenient and cheap replacement battery online shop in uk.
    We specialize in laptop batteries http://www.batterylaptoppower ,laptop AC adapters. All of batteries are brand new, with the excellent service from our customer service team, you can feel free to purchase on laptop battery!

    Here is cheap laptop ac adapter http://www.adapterlist.com online shop in uk. We specialize in http://www.batterygoshop.co.uk laptop AC adapters. All our products are brand new, with the excellent service from our customer service team.

    Here is cheap laptop ac adapter http://www.adapterlist.com online shop in uk. We specialize in http://www.batteryfast.com.au laptop AC adapters. All our products are brand new, with the excellent service from our customer service team.

  • http://www.game4power.com buy wow gold

    Today, the Microsoft-owned in-game ad agency said that it has signed an exclusive multiyear agreement with Blizzard. Azerothians opposed to seeing in-game ads in their localworld of warcft goldwatering holes need not worry, however, because the deal is limited to Blizzard’s Web sites and Battle.net,the game maker’s online-gaming hub. Terms of the deal were not announced, but Massive did note that the agreement is applicable to users in the US, Canada, Europe, South Korea, and Australia.
    buy wow gold

    Massive also said today that it would be extending its aforementioned deal with Activision to encompass an additional 18 games appearing on the Xbox 360 and PC.cheap wow goldThe agency didn’t fully delineate which would fall under this deal, though it did call out Guitar Hero: World Tour, James Bond: Quantum of Solace, and Transformers: Revenge of the Fallen,buy wow items as well as games in its Tony Hawk and AMAX Racing franchises.Shortly before Activision and Vivendi announced their deal of the decade,wow power levelingthe Guitar Hero publisher signed on to receive in-game advertisements from Massive Inc for a number of its Xbox 360 and PC games. A bit more than a year later, Massive is now extending its reach to Activision’s new power player, Blizzard Entertainment.buy wow gold from our site ,you’ll get more surprises!

  • http://sgerag tiantian

    http://www.bestshopweb.com-a good website where is sell beautiful shoes ,I bought one in there ,and I feel the shoe is fine ,besides the price is very cheap. if you have some time,you can go to there to have a look.

  • http://www.aypearl.net wholesale jewelry

    wholesale jewelry, fashion jewelry,jewelry wholesale,pearl jewelry,handmade jewelry, wholesale fashion jewelry,wholesale coral jewelry,discount jewelry,wholesale crystal jewelry,gemstone jewelry,
    http://www.aypearl.net

  • http://www.cheaperzone.com warhammer gold
  • http://www.cheaperzone.com warhammer gold

    [url=http://www.warhammer100.com/][b]warhammer gold[/b][/url]
    [url=http://www.warhammer100.com/][b]buy warhammer gold[/b][/url]
    [url=http://www.cheaperzone.com/][b]warhammer gold[/b][/url]
    [url=http://www.cheaperzone.com/News/News.Html][b]buy warhammer gold[/b][/url]
    [url=http://www.buyfastgold.com/][b]warhammer gold[/b][/url]
    [url=http://www.buyfastgold.com/news/][b]buy warhammer gold[/b][/url]
    [url=http://www.game4power.com/][b]wow gold[/b][/url]
    [url=http://www.game4power.com/news/][b]buy wow gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]wow gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]buy wow gold[/b][/url]
    [url=http://www.game4power.com/][b]world of warcraft gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]world of warcraft gold[/b][/url]
    [url=http://www.gamelevelup.com/][b]wow power leveling[/b][/url]
    [url=http://itemstores.com/][b]wow item[/b][/url]

  • http://www.cheaperzone.com warhammer gold
  • http://www.cheaperzone.com warhammer gold

    [url=http://www.warhammer100.com/][b]warhammer gold[/b][/url]
    [url=http://www.warhammer100.com/][b]buy warhammer gold[/b][/url]
    [url=http://www.cheaperzone.com/][b]warhammer gold[/b][/url]
    [url=http://www.cheaperzone.com/News/News.Html][b]buy warhammer gold[/b][/url]
    [url=http://www.buyfastgold.com/][b]warhammer gold[/b][/url]
    [url=http://www.buyfastgold.com/news/][b]buy warhammer gold[/b][/url]
    [url=http://www.game4power.com/][b]wow gold[/b][/url]
    [url=http://www.game4power.com/news/][b]buy wow gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]wow gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]buy wow gold[/b][/url]
    [url=http://www.game4power.com/][b]world of warcraft gold[/b][/url]
    [url=http://www.wowgoldone.com/][b]world of warcraft gold[/b][/url]
    [url=http://www.gamelevelup.com/][b]wow power leveling[/b][/url]
    [url=http://itemstores.com/][b]wow item[/b][/url]

    warhammer gold warhammer gold buy warhammer gold
    warhammer gold buy warhammer gold
    warhammer gold buy warhammer gold
    wow gold buy wow gold
    wow gold buy wow gold
    world of warcraft gold world of warcraft gold
    wow power leveling
    wow item

  • ptsell

    I support author’s viewpoint, hoped that will have later also more better articles,
    [url=http://c]gucci shoes[/url]
    [url=http://www.ptsell.com]Nike[/url]
    [url=http://www.ptsell.com]UGG Boots[/url]
    [url=http://www.ptsell.com]Sunglasses[/url]
    [url=http://www.ptsell.com]Polo[/url]
    [url=http://www.ptsell.com]Abercrombie Fitch[/url]
    [url=http://www.ptsell.com]Handbag[/url]
    [url=http://www.ptsell.com]Ed Hardy[/url]
    [url=http://www.ptsell.com]bags[/url]
    [url=http://www.ptsell.com]LV LouisVuitton[/url]
    [url=http://www.ptsell.com]Chloe[/url]
    [url=http://www.ptsell.com]Balenciaga[/url]
    [url=http://www.ptsell.com]Burberry[/url]
    [url=http://www.ptsell.com]Chanel[/url]
    [url=http://www.ptsell.com]Gucci[/url]
    [url=http://www.ptsell.com]Fendi[/url]
    [url=http://www.ptsell.com]Hermes[/url]
    [url=http://www.ptsell.com]Coach[/url]
    [url=http://www.ptsell.com]Christian Dior[/url]
    [url=http://www.ptsell.com]Prada[/url]
    [url=http://www.ptsell.com]YSL[/url]
    [url=http://www.ptsell.com]Jimmychoo[/url]
    [url=http://www.ptsell.com]Dolce&Gabbana[/url]
    [url=http://www.ptsell.com]Marc Jacobs[/url]
    [url=http://www.ptsell.com]Barbarabui[/url]
    [url=http://www.ptsell.com]Miumiu[/url]
    [url=http://www.ptsell.com]Versace[/url]
    Abercrombie & Fitch
    Christian Louboutin
    gucci shoes
    bags
    Ed Hardy
    Louis Vuitton
    gucci Bags
    Chanel Bags
    Chloé Bags
    Chloé Bags
    Balenciaga Bags
    Burberry Bags
    Fendi Bags
    Hermes Bags
    Coach Bags

    Prada Bags
    Yves Saint Laurent Bags
    JimmyChoo Bags
    Dolce & Gabbana Bags/a>
    Marc Jacobs Bags
    Versace Bags
    nike shoes
    dsquared
    Adidas Shoes
    ugg boots
    will read the first time, thank!

  • Steffan
  • http://www.bieleoffset.de Steffan
  • rererw

    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor leveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]wow honor powerleveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]cheap honor wow[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]wow honor leveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor powerleveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor farming[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]wow honor points[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]buy wow honor[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor points[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor leveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]cheap honor wow[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]wow honor leveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor powerleveling[/url]
    [url=”http://4mmofans.com/WOW-Honor-Powerleveling.asp”]honor farming[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]wow gold[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]cheap wow gold[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]buy wow gold[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]wow gold sell[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]cheapest wow gold[/url]
    [url=”http://4mmofans.com/wow_us_gold.asp”]world of warcraft gold[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]wow powerleveling[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]wow power leveling[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]cheap wow power leveling[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]fast wow power lveling[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]cheapest wow power leveling[/url]
    [url=”http://4mmofans.com/world-of-warcraft-us-pl.asp”]warcraft leveling[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]aoc gold[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]cheap aoc gold[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]buy aoc gold[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]aoc gold sell[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]cheapest aoc gold[/url]
    [url=”http://4mmofans.com/Cheap.Age_of_Conan_-_US.asp”]age of conan gold[/url]

  • http://stephenedwards.virtualituk.com Stephen Edwards

    Please check out my article on dynamic LINQ to SQL queries:

    http://stephenedwards.virtualituk.com/2008/07/dynamic-linq-to-sql/

    and Composable LINQ to SQL queries:

    http://stephenedwards.virtualituk.com/2008/07/composable-linq-to-sql/

    I think you will find these resolve the problem of dynamic queries without resorting to using SQL.

  • Jock

    There is no doubt that the Bush Administration is slow to fill both confirmed appointments and day-to-day non-confirmed political appointments. Historically – this shortage of appointments occurs later is a lame duck administration – people don’t want to leave another permanent job for a few months in a closing administration – and in this case more than others – it is tough to get people to serve an unpopular President.
    play video poker
    It is also true that the party in control of the Senate is slow to approve appointments which have permanent terms – perhaps 5-12 years long and install the other party in for the long pull when there is a chance they might own the White House in January 2009 and can fill those jobs with their own people.

  • http://lomenxi.com wowgold
  • Scott Wojan

    Ian,
    Not sure if you are familiar with the criteria api in NHibernate but it allows compile time checking for querying objects:
    http://www.hibernate.org/hib_docs/nhibernate/1.2/reference/en/html/querycriteria.html

  • tom

    Cannot find the “get out of jail card” – executesql in linq anywhere?

    I am trying to avoid usinig a static dataclass approach .. so we can avoid creating a static database mapping. Seems linq will not provide this at all.

  • http://rgabostyle.com Gabor Ratky

    Ian,

    what if the repository abstraction exposes IQueryable ? The Business Layer (or Model) would be able to compose the queries in a simple and strongly-typed manner on top of those.. This is both simple and testable as you can easily replace the implementation with an in-memory List .AsQueryable()..

    It seems to me that you’re unnecessarily abstracting away the expression tree behind your notion of Specification without really adding value..

    Am I missing something here?

    Great articles, btw!

  • Steve W.

    Ian, I am really enjoying your articles; keep up the good work.

    I do have a question for you regarding DLINQ’s XML Mapping, specifically, what if we wanted to abstract the Customer’s location information into another class/struct, such as Address?

    So, instead of the following:

    public Customer
    {
    string _address;
    string _city;
    string _postalCode;

    …..
    }

    we move those fields into theAddress class and want the following:

    public class Customer
    {
    public Address _address;
    }

    How would we map the columns from the database to this class without modifying the database schema?

    Another question I have is once that change has been made, how do you suggest we search for a customer by their complete address? Would we use a specification or would we create a method in the CustomerRepository class taking an Address object as a parameter?

    Thanks!

    Steve

  • Ian Cooper

    Hi Dave,

    DataContext contains a CreateDatabase method which means you can build the Db from your domain model.

  • Ian Cooper

    Hi Steve,

    Yes. I’ll try to do that toward the end of the series, so early next year. I’ll open source it so folks can just use what they want from it without fear.

  • Steve W.

    Ian, would it possible for you to create a simple solution containing the code for this series and have it available for download?

    Thanks,

    Steve

  • Dave K.

    Ian, this series has been quite helpful.

    One thing I’ve been trying to figure out.. using the Linq to SQL DBML designer, one can drag a table from the database over and automatically generate an entity class. Is the reverse true? Can I create an entity class and have LinqToSql automatically create the underlying table structures? (Seems like a logical next step)..

  • Ian Cooper

    Hi Eden,

    Yes good point – deferred execution does allow you to build up your statement piece by piece. Your solution is a good middle ground for many people than fiddling with expression trees in specifications where the requirement is around narrowing the restriction by anding new expressions.

    But yes, the key to using the deferred execution inherent in IQueryable, as you do, and Specifications is to preserve the compile time type-checking support for queries from LINQ. If we are using a strongly-typed language, we might as well reap the benefits of doing so.

    Of course specifications have a value beyond just querying data, they are also capable of supporting rules as well so that we can write:

    ISpecification customersInLondon = new Specification(c => c.City == “London”);

    if (customersInLondon.IsSatisfiedBy(myCustomer))
    {
    ….
    }

    which makes them useful for tasks like validation or pick lists.

    I talk more about this over at the old blog:

    http://iancooper.spaces.live.com/blog/cns!844BD2811F9ABE9C!451.entry

  • http://www.ridgway.co.za Eden Ridgway

    Hi Ian

    Personally I think the loss of compile time checking using ExecuteQuery on a dynamically generated SQL string defeats one of the biggest advantages of LINQ. As I’m sure you know, but some of your readers may not, one does not have to mess with expression trees or ExecuteQuery to generate a LINQ to SQL statement with optional AND parameters. I think you’ll find that for a lot of situations this is all that people need and they can also avoid using the specification pattern. Take the following example:

    bool isActive = true;
    string name = “Harry”;

    var query = from customer in context.customers
    select customer;

    query = query.Where(customer => customer.IsActive == isActive);
    query = query.Where(customer => customer.Name == name);

    Hopefully this will help someone out there.