title: Angular2 DI - initializing multiple different instances in the same constructor
body: <p>I have an Angular2 DI question. Say I have a <code>TestService</code> and I want to use 2 different instances of this service inside the same component. If I simply add a provider to the component and I add the 2 instances to the constructor I end up with the same service instance. For example:</p>
  
  <p><strong>TestService</strong></p>
  
  <pre><code>import {Injectable} from "@angular/core";
  
  @Injectable()
  export class TestService {
  
      public id: number = Math.random();
  
      public toString(): string {
          return "Id: " + this.id;
      }
  }
  </code></pre>
  
  <p><strong>Test component</strong></p>
  
  <pre><code>import {Component, Input, OnInit} from "@angular/core";
  import {TestService} from "../../services/test.service";
  
  @Component({
      providers: [TestService]
  })
  export class TestComponent implements OnInit {
  
      constructor(private _testService1: TestService, private _testService2: TestService) { };
  
      ngOnInit() {
          console.log("AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA", this._testService1.toString());
          console.log("BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB", this._testService2.toString());
      }
  }
  </code></pre>
  
  <p><strong>Result in console</strong></p>
  
  <pre><code>AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA Id: 0.24242492129168425
  BBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBBB Id: 0.24242492129168425
  </code></pre>
  
  <p>Can someone pls tell me if there's a way to use Angular2's DI mechanism to inject multiple different instances of a service within the same component or should I just drop the DI for this particular case and create my instances manually with a manual constructor?</p>
  
  <p>Thanks in advance</p>