Click here to Skip to main content
13,196,286 members (49,330 online)
Rate this:
 
Please Sign up or sign in to vote.
See more:
I am trying to create a class that uses two levels of inheritance as such:

public class QuickDateTokenParcer<TQuickDateRelative, TUserInputOrderAdjustment>
where TQuickDateRelative : AbstractQuickDateRelative<TUserInputOrderAdjustment>, new() 
where TUserInputOrderAdjustment : AbstractUserInputOrderAdjustment, new()


This would be OK except I really do not like specifying it like:

var dic = new QuickDateTokenParcer<QuickDateRelativePast
      <UserInputOrderAdjustmentMdy>, UserInputOrderAdjustmentMdy>(
	"QuickDateStrings.xml", DateTime.Now);


I can obviously get around this, but would like be able to do the following:

var dic = new QuickDateTokenParcer<QuickDateRelativePast
      <UserInputOrderAdjustmentMdy>>(
	"QuickDateStrings.xml", DateTime.Now);


or the following

var dic = new QuickDateTokenParcer<QuickDateRelativePast,
      UserInputOrderAdjustmentMdy>(
	"QuickDateStrings.xml", DateTime.Now);
Posted 3-Oct-12 10:40am

1 solution

Rate this: bad
 
good
Please Sign up or sign in to vote.

Solution 1

There's always:
using QuickDateRelativePastMdy = QuickDateRelativePast<UserInputOrderAdjustmentMdy>;
//...
var dic = new QuickDateTokenParcer<QuickDateRelativePastMdy,
                                   UserInputOrderAdjustmentMdy>
                   ("QuickDateStrings.xml", DateTime.Now);
  Permalink  
Comments
Clifford Nelson 3-Oct-12 20:10pm
   
Definately an idea, but not what I was hoping for.

This content, along with any associated source code and files, is licensed under The Code Project Open License (CPOL)

  Print Answers RSS
Top Experts
Last 24hrsThis month


Advertise | Privacy |
Web01 | 2.8.171019.1 | Last Updated 3 Oct 2012
Copyright © CodeProject, 1999-2017
All Rights Reserved. Terms of Service
Layout: fixed | fluid

CodeProject, 503-250 Ferrand Drive Toronto Ontario, M3C 3G8 Canada +1 416-849-8900 x 100