using System.Data; namespace Common { public class SomeStronglyTypedDataSet : DataSet { } }Assembly B:
namespace ProjectB { public class SomeClass { public void DoSomethingWithDS(Common.SomeStronglyTypedDataSet ds) { } } }Then in ProjectA:
namespace ProjectA { public class SomeClass { public void SomeMethod() { Common.SomeStronglyTypedDataSet ds = new Common.SomeStronglyTypedDataSet(); ProjectB.SomeClass sc = new ProjectB.SomeClass(); sc.DoSomethingWithDS(ds); } } }Both A and B need a reference to Common. A also needs a reference to B.