<html>
  <head>
    <meta content="text/html; charset=UTF-8" http-equiv="Content-Type">
  </head>
  <body bgcolor="#FFFFFF" text="#000000">
    <div class="moz-cite-prefix">Hi,<br>
        Thanks for the answer. This seemed not to be the case with the
      M$ compiler. I will double check today.<br>
        Is there any way to build 'fat libraries' (standalone) i.e to
      tell the compiler to put everything that the library needs (of
      course not mscorlib) in the library itself?<br>
      Cheers,<br>
      Vassil<br>
      On 11/25/2013 12:19 PM, Rafael Teixeira wrote:<br>
    </div>
    <blockquote
cite="mid:CA+1gSVicKXPGzDLxjm21ZJPX0jCJM5yWsPfSoSE=MEiQ5ftC2w@mail.gmail.com"
      type="cite">
      <div dir="ltr">That is the rule because the compiler need to know
        the details of the Interface that is defined A because it is
        being used publicly as your public class implements it. 
        <div><br>
        </div>
        <div>As assembly references aren't transitive you need to be
          explicit (to embed proper dependency versioning metadata)
          about which library you are referencing types from.
          <div>
            <br>
          </div>
          <div>Note that if your type MyClass had just a private field
            of that interface type, for instance, of if MyClass was in
            the internal instead of public scope the compiler would not
            need to have access to library A, but nevertheless your
            running app would need to have it available to load and
            execute code in library B.</div>
        </div>
        <div><br>
        </div>
        <div>Hope it helps,</div>
      </div>
      <div class="gmail_extra"><br clear="all">
        <div>Rafael Teixeira<br>
          O..:.)oooo<br>
        </div>
        <br>
        <br>
        <div class="gmail_quote">On Sat, Nov 23, 2013 at 1:32 PM, Vassil
          Vassilev <span dir="ltr"><<a moz-do-not-send="true"
              href="mailto:v.g.vassilev@gmail.com" target="_blank">v.g.vassilev@gmail.com</a>></span>
          wrote:<br>
          <blockquote class="gmail_quote" style="margin:0 0 0
            .8ex;border-left:1px #ccc solid;padding-left:1ex">
            Hi,<br>
              A silly question:<br>
              I have interface IInterface defined in a library A.<br>
              I have a class(generic) MyClass, implementing that
            interface in library B.<br>
              I have a user of MyClass (the place I do new
            MyClass<sometype>()), when trying to compile the code
            using MyClass it tells me that I need to include not only B
            but A as well. To me that is strange... Is there a way to
            workaround this problem? Am I doing something wrong?<br>
            Many thanks,<br>
            Vassil<br>
            _______________________________________________<br>
            Mono-devel-list mailing list<br>
            <a moz-do-not-send="true"
              href="mailto:Mono-devel-list@lists.ximian.com"
              target="_blank">Mono-devel-list@lists.ximian.com</a><br>
            <a moz-do-not-send="true"
              href="http://lists.ximian.com/mailman/listinfo/mono-devel-list"
              target="_blank">http://lists.ximian.com/mailman/listinfo/mono-devel-list</a><br>
          </blockquote>
        </div>
        <br>
      </div>
    </blockquote>
    <br>
  </body>
</html>