«الگوی نوع» (Type Pattern) در سیشارپ بخشی از تطبیق الگوها (Pattern Matching) است که اجازه میدهد در زمان اجرا (Runtime Type Check) نوع یک شیء را بررسی کنید و همزمان با اعلان الگوی نوع (Declaration Pattern) یک متغیر محلی از همان نوع بسازید. بهجای تبدیل نوعهای تکراری (Type Cast/Downcast) و ناامن، با استفاده از عبارت is یا switch (چه Switch Statement و چه Switch Expression) اگر شیء واقعاً از نوع موردنظر باشد، مقدار آن در همان شاخه بهصورت یک Pattern Variable در دسترس قرار میگیرد و بدون Cast اضافی میتوانید از اعضایش استفاده کنید. این رویکرد خوانایی (Readability) و ایمنی (Safety) را بالا میبرد، از خطاهای زمان اجرا ناشی از تبدیل نامعتبر جلوگیری میکند و در کنار الگوهای دیگر مثل Relational Pattern، Property Pattern و Logical Patterns (and/or/not) منطق تصمیمگیری را ساده و فشرده میسازد؛ بهویژه در سناریوهای Polymorphism و بررسی نال (Null Check) در کدهای دامنهمحور.