Skip to main content
added 2 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
var types = GetType()
   .Assembly
   .GetReferencedAssemblies()
   .SelectMany(assemblyName => Assembly.Load(assemblyName).GetTypes())
   .Where(type => type.IsAssignableFrom(typeof (IDataProvider)).IsAssignableFrom(type))
   .ToList();
var types = GetType()
   .Assembly
   .GetReferencedAssemblies()
   .SelectMany(assemblyName => Assembly.Load(assemblyName).GetTypes())
   .Where(type => type.IsAssignableFrom(typeof (IDataProvider)))
   .ToList();
var types = GetType()
   .Assembly
   .GetReferencedAssemblies()
   .SelectMany(assemblyName => Assembly.Load(assemblyName).GetTypes())
   .Where(type => (typeof (IDataProvider)).IsAssignableFrom(type))
   .ToList();
Tweeted twitter.com/StackProgrammer/status/773716165340323840
edited body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18

Note: I have been reading [.Net solution structure of an enterprise application[(http://www.taimila.com/blog/.net-solution-structure-of-an-enterprise-application/).Net solution structure of an enterprise application and it is possibly helping, but I don't have a conclusion yet.

Note: I have been reading [.Net solution structure of an enterprise application[(http://www.taimila.com/blog/.net-solution-structure-of-an-enterprise-application/) and it is possibly helping, but I don't have a conclusion yet.

Note: I have been reading .Net solution structure of an enterprise application and it is possibly helping, but I don't have a conclusion yet.

added 11 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
public sealed class DataMuncher {
   public DataMuncher(
      IEnumerable<IDataProvider> dataProviders,
      IEnumerable<IDataConsumer> dataConsumers
   ) {
      var consumersAndData = dataConsumers
         .Select(consumer => new { consumer, dataspec = consumer.GetDesiredDataSpecification() })
         .Select(cas => new {
            cas.consumer,
            cas.dataspec,
            data = dataProviders
               .Select(provider => provider.RetrieveData(cas.dataspec))
         })
         .ToList();
      consumersAndData.ForEach(cas => cas.consumer.ReceiveData(cas.data));
   }
}
public sealed class DataMuncher {
   public DataMuncher(
      IEnumerable<IDataProvider> dataProviders,
      IEnumerable<IDataConsumer> dataConsumers
   ) {
      var consumersAndData = dataConsumers
         .Select(consumer => new { consumer, dataspec = GetDesiredDataSpecification })
         .Select(cas => new {
            cas.consumer,
            cas.dataspec,
            data = dataProviders
               .Select(provider => provider.RetrieveData(cas.dataspec))
         })
         .ToList();
      consumersAndData.ForEach(cas => cas.consumer.ReceiveData(cas.data));
   }
}
public sealed class DataMuncher {
   public DataMuncher(
      IEnumerable<IDataProvider> dataProviders,
      IEnumerable<IDataConsumer> dataConsumers
   ) {
      var consumersAndData = dataConsumers
         .Select(consumer => new { consumer, dataspec = consumer.GetDesiredDataSpecification() })
         .Select(cas => new {
            cas.consumer,
            cas.dataspec,
            data = dataProviders
               .Select(provider => provider.RetrieveData(cas.dataspec))
         })
         .ToList();
      consumersAndData.ForEach(cas => cas.consumer.ReceiveData(cas.data));
   }
}
added 1783 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
Loading
added 421 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
Loading
added 308 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
Loading
added 699 characters in body
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
Loading
Source Link
ErikE
  • 1.2k
  • 1
  • 8
  • 18
Loading