Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • Home
  • SEARCH
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 145923
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: May 11, 20262026-05-11T08:30:35+00:00 2026-05-11T08:30:35+00:00

What does where T : somevalue mean? I just saw some code that said

  • 0

What does where T : somevalue mean? I just saw some code that said where T : Attribute. I think this has something to do with generics but I am not sure what this means or what it is doing.

Does anyone know?

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. 2026-05-11T08:30:36+00:00Added an answer on May 11, 2026 at 8:30 am

    It is a constraint on a type parameter, meaning that the type T given to a generic class or method must inherit from the class Attribute

    For example:

    public class Foo<T> :     where T : Attribute {     public string GetTypeId(T attr) { return attr.TypeId.ToString(); }  // .. }  Foo<DescriptionAttribute> bar; // OK, DescriptionAttribute inherits Attribute Foo<int> baz; // Compiler error, int does not inherit Attribute 

    This is useful, because it allows the generic class to do things with objects of type T with the knowledge that anything that is a T must also be an Attribute.

    In the example above, it’s okay for GetTypeId to query the TypeId of attr because TypeId is a property of an Attribute, and because attr is a T it must be a type that inherits from Attribute.

    Constraints can also be used on generic methods, with the same effect:

    public static void GetTypeId<T>(T attr) where T : Attribute {    return attr.TypeId.ToString(); } 

    There are other constraints you can place on a type; from MSDN:

    where T: struct

    The type argument must be a value type. Any value type except Nullable can be specified.

    where T : class

    The type argument must be a reference type; this applies also to any class, interface, delegate, or array type.

    where T : new()

    The type argument must have a public parameterless constructor. When used together with other constraints, the new() constraint must be specified last.

    where T : <base class name>

    The type argument must be or derive from the specified base class.

    where T : <interface name>

    The type argument must be or implement the specified interface. Multiple interface constraints can be specified. The constraining interface can also be generic.

    where T : U

    The type argument supplied for T must be or derive from the argument supplied for U. This is called a naked type constraint.

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

Let say that I have xml like this: <root> <node light=somevalue>message1</node> <node dark=somevalue>message2</node> <node>message3</node>
Here's the code that won't work : class MyClass { const myconst = 'somevalue';
I have a flat file source from Excel that has a structure like this:
I saw somewhere this code snippet: var idx = SOME_VALUE; var color = {
Does the Java language have delegate features, similar to how C# has support for
Does anyone have any recommendations of tools that can be of assistance with moving
Does anyone use have a good regex library that they like to use? Most
I'm faced with a situation that I think can only be solved by using
This is the full code: def checkRow(table, r, pos, word): # done for you!
How does a developer do the equivalent of this in managed c++? : c#

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.