Talk about simple eh? How you're going to keep all this stuff straight is
beyond me. You've got Contact AND Contract all goo'd together and triple
inheritance and what not. Is this a recommend setup? I think I'd shoot
myself if I had do develop in this environment.
First off I'd setup a test case of stripped down object names and make sure
my base premise works. You've got so much baggage here it's a wonder you can
hold it all in your mind while you work it out.
So simplify, create the same structure but with object names and such that
help you focus on the problem and not the packaging.
And keep your proto test around so that when you break your supremely
complex model you have somewhere to fall back to so as to clear your mind
and sort out the issue.
DC
On 6/1/06, Santiago Perez <santiago.perez@...> wrote:
>
> Hello everyone, this is my first post so please bare with me.
>
> I am trying to understand why I can't cast generic class to a class
> of a base type. I have the following setup:
> ///////////////////////////////////////////////////////////////////
> public class Personnel_List<T> :
> ProjectCentral.GlobalObjects.PersistentObject_List<Person_Abs> where
> T : Person_Abs, iPerson
> {
> }
>
>
> public abstract class Person_Abs :
> ProjectCentral.GlobalObjects.PersistentObject, Contacts.iPerson
> {
> }
>
>
> public class Vendor_Person : Person
> {
> }
>
> public class Contract_Person : Vendor_Person
> {
> ////////////////////////////////////////////////
>
>
> Ok so now I have a contract class that has a property Personnel_List
> which is
>
> /////////////////////////////////////////////////////////////
> public class Contract :
> ProjectCentral.GlobalObjects.PersistentObject, iContract
> {
> public
> ProjectCentral.Contacts.Personnel_List<Contacts.Contract_Person>
> Personnel_List
> {
> get
> { if (this._Personnel_List == null)
> this._Personnel_List = new
> Personnel_List<Contract_Person>();
>
> return this._Personnel_List;
> }
> set
> {
> this.Personnel_List = value;
> }
> }
>
> }
> //////////////////////////////////////////////////////////////////
>
>
> THen I have a usercontrol that I want to use everywhere to list
> Personnel so I set up a property as follows:
>
>
> //////////////////////////////////////////////////////////
> public Personnel_List<Person> DataSource
> {
> get { return (Personnel_List<Person>)
> grdPersonnel.DataSource; }
> set {grdPersonnel.DataSource = value;}
> }
> ////////////////////////////////////////////////////////////
>
>
> So when I try to do this it bombs on me:
> ///////////////////////////////////////////////////////////////
> UcPersonnelList1.DataSource = ((Contract)
> this.ContractDetail1.DataSource).Personnel_List;
> ////////////////////////////////////////////////////////////
>
>
> Even if I try this:
> ///////////////////////////////////////////////////////////////
> UcPersonnelList1.DataSource = (Personnel_List<Person>)((Contract)
> this.ContractDetail1.DataSource).Personnel_List;
> ////////////////////////////////////////////////////////////
>
>
>
> ANy help would be greatly appreciated. My boss is starting to look
> at me like I don't know what I'm doing.
>
>
>
>
>
>
>
>
>
>
>
> SPONSORED LINKS
> Object
oriented<http://groups.yahoo.com/gads?t=ms&k=Object+oriented&w1=Object+oriented&\
w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+oriented+trainin\
g&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&s=172&.sig=uLqg\
2pfGRplGmMsp6kJtVQ> Object
> oriented
design<http://groups.yahoo.com/gads?t=ms&k=Object+oriented+design&w1=Object+orie\
nted&w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+oriented+tr\
aining&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&s=172&.sig\
=pGWYLp0sQpJs3JoBMlqbdA> Object
> oriented
language<http://groups.yahoo.com/gads?t=ms&k=Object+oriented+language&w1=Object+\
oriented&w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+oriente\
d+training&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&s=172&\
.sig=oMxENFA3eiv-nKTwqk3z6Q> Object
> oriented
training<http://groups.yahoo.com/gads?t=ms&k=Object+oriented+training&w1=Object+\
oriented&w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+oriente\
d+training&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&s=172&\
.sig=WW87rn12Wb695fEwKFWRNg> Object
> oriented
methodology<http://groups.yahoo.com/gads?t=ms&k=Object+oriented+methodology&w1=O\
bject+oriented&w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+o\
riented+training&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&\
s=172&.sig=ZfydFONc8Llu8PBIVAyRuQ> Object
> oriented
tutorial<http://groups.yahoo.com/gads?t=ms&k=Object+oriented+tutorial&w1=Object+\
oriented&w2=Object+oriented+design&w3=Object+oriented+language&w4=Object+oriente\
d+training&w5=Object+oriented+methodology&w6=Object+oriented+tutorial&c=6&s=172&\
.sig=5RlQ7dXcE52DzP8Rq1Dbdg>
> ------------------------------
> YAHOO! GROUPS LINKS
>
>
> - Visit your group
"StrongTypes<http://groups.yahoo.com/group/StrongTypes>"
> on the web.
>
> - To unsubscribe from this group, send an email to:
>
StrongTypes-unsubscribe@yahoogroups.com<StrongTypes-unsubscribe@yahoogroups.com?\
subject=Unsubscribe>
>
> - Your use of Yahoo! Groups is subject to the Yahoo! Terms of
> Service <http://docs.yahoo.com/info/terms/>.
>
>
> ------------------------------
>
--
Dave Cline
www.davecline.com/
davecline@...
[Non-text portions of this message have been removed]