Click here to Skip to main content
15,887,027 members
Home / Discussions / C#
   

C#

 
GeneralRe: Voting System in C# Pin
Richard MacCutchan10-Dec-17 22:38
mveRichard MacCutchan10-Dec-17 22:38 
GeneralRe: Voting System in C# Pin
Pete O'Hanlon10-Dec-17 22:47
mvePete O'Hanlon10-Dec-17 22:47 
AnswerRe: Voting System in C# Pin
OriginalGriff10-Dec-17 23:32
mveOriginalGriff10-Dec-17 23:32 
GeneralRe: Voting System in C# Pin
Mycroft Holmes10-Dec-17 23:39
professionalMycroft Holmes10-Dec-17 23:39 
GeneralRe: Voting System in C# Pin
OriginalGriff10-Dec-17 23:43
mveOriginalGriff10-Dec-17 23:43 
GeneralRe: Voting System in C# Pin
phil.o11-Dec-17 18:02
professionalphil.o11-Dec-17 18:02 
QuestionGeneric type passed into method question Pin
User987439-Dec-17 20:44
professionalUser987439-Dec-17 20:44 
AnswerRe: Generic type passed into method question Pin
OriginalGriff9-Dec-17 22:32
mveOriginalGriff9-Dec-17 22:32 
The "bit in the middle" is the indicator that this is a Generic method, and allows you to specify a substitution name which identifies where the generic class type is needed. It doesn't have to be <T> - you can use any valid identifier:
private TypeOfClass DataConnection<TypeOfClass>(TypeOfClass db_conn_obj, int index_of_mydatafile)
    {
    return db_conn_obj;
    }
But the convention is to use "T" as the generic class name.
The trouble with that is I can happily pass any class type to your method:
var x = DataConnection("hello", 666);
And it will work - additionally, You can't use any of the fields, properties, or methods of your Connection, even if you pass an SqlConnection object.

The solution is to apply a constraint:
private T DataConnection<T>(T db_conn_obj, int index_of_mydatafile) where T: System.Data.Common.DbConnection
    {
    Console.WriteLine(db_conn_obj.ConnectionString);
    db_conn_obj.Open();
    return db_conn_obj;
    }
Which limits the classes you can pass to those derived from DbConnection (which includes SqlConnection, OleDbConnection, and so forth:
var x = DataConnection(new SqlConnection(), 666);
var y = DataConnection(new OleDbConnection(), 666);

Bad command or file name. Bad, bad command! Sit! Stay! Staaaay...
AntiTwitter: @DalekDave is now a follower!

QuestionRe: Generic type passed into method question Pin
User9874310-Dec-17 0:49
professionalUser9874310-Dec-17 0:49 
AnswerRe: Generic type passed into method question Pin
OriginalGriff10-Dec-17 0:57
mveOriginalGriff10-Dec-17 0:57 
GeneralRe: Generic type passed into method question Pin
User9874310-Dec-17 1:05
professionalUser9874310-Dec-17 1:05 
GeneralRe: Generic type passed into method question Pin
OriginalGriff10-Dec-17 1:49
mveOriginalGriff10-Dec-17 1:49 
AnswerRe: Generic type passed into method question Pin
Eddy Vluggen10-Dec-17 3:03
professionalEddy Vluggen10-Dec-17 3:03 
GeneralRe: Generic type passed into method question Pin
User9874310-Dec-17 18:41
professionalUser9874310-Dec-17 18:41 
GeneralRe: Generic type passed into method question Pin
Eddy Vluggen11-Dec-17 2:34
professionalEddy Vluggen11-Dec-17 2:34 
AnswerRe: Generic type passed into method question Pin
Gerry Schmitz10-Dec-17 1:04
mveGerry Schmitz10-Dec-17 1:04 
Question2 Active Directory Questions Pin
Kevin Marois7-Dec-17 9:42
professionalKevin Marois7-Dec-17 9:42 
AnswerRe: 2 Active Directory Questions Pin
Dave Kreskowiak7-Dec-17 13:11
mveDave Kreskowiak7-Dec-17 13:11 
GeneralRe: 2 Active Directory Questions Pin
Kevin Marois8-Dec-17 5:13
professionalKevin Marois8-Dec-17 5:13 
GeneralRe: 2 Active Directory Questions Pin
Dave Kreskowiak8-Dec-17 7:29
mveDave Kreskowiak8-Dec-17 7:29 
AnswerRe: 2 Active Directory Questions Pin
Eddy Vluggen7-Dec-17 14:20
professionalEddy Vluggen7-Dec-17 14:20 
QuestionHow can I add multiple headers in a ListView Control winforms c#? Pin
Dionisio Huerta Rosario7-Dec-17 6:25
Dionisio Huerta Rosario7-Dec-17 6:25 
AnswerRe: How can I add multiple headers in a ListView Control winforms c#? Pin
Gerry Schmitz7-Dec-17 20:41
mveGerry Schmitz7-Dec-17 20:41 
AnswerRe: How can I add multiple headers in a ListView Control winforms c#? Pin
Ralf Meier8-Dec-17 1:06
mveRalf Meier8-Dec-17 1:06 
QuestionDynamic HTML from Code Behind Pin
warren8r7-Dec-17 5:16
warren8r7-Dec-17 5:16 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.