Common.cs source code in C# .NET

Source code for the .NET framework in C#

                        

Code:

/ 4.0 / 4.0 / DEVDIV_TFS / Dev10 / Releases / RTMRel / ndp / fx / src / DataWeb / Client / System / Data / Services / Client / Common.cs / 1305376 / Common.cs

                            //---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//  
//  Common defintions and functions for the server and client lib
//  
//--------------------------------------------------------------------- 

#if ASTORIA_CLIENT 
namespace System.Data.Services.Client
#else
namespace System.Data.Services
#endif 
{
    using System.Linq; 
    using System.Diagnostics; 
    using System.Globalization;
    using System.IO; 
    using System.Text;
    using System.Xml;

    ///  
    /// Common defintions and functions for the server and client lib
    ///  
    internal static class CommonUtil 
    {
        ///  
        /// List of types unsupported by the client
        /// 
        private static readonly Type[] unsupportedTypes = new Type[]
        { 
#if !ASTORIA_LIGHT  // System.Dynamic & tuples not available (as of SL 2.0)
                typeof(System.Dynamic.IDynamicMetaObjectProvider), 
                typeof(System.Tuple<>),         // 1-Tuple 
                typeof(System.Tuple<,>),        // 2-Tuple
                typeof(System.Tuple<,,>),       // 3-Tuple 
                typeof(System.Tuple<,,,>),      // 4-Tuple
                typeof(System.Tuple<,,,,>),     // 5-Tuple
                typeof(System.Tuple<,,,,,>),    // 6-Tuple
                typeof(System.Tuple<,,,,,,>),   // 7-Tuple 
                typeof(System.Tuple<,,,,,,,>)   // 8-Tuple
#endif 
        }; 

        ///  
        /// Test whether a type is unsupported by the client lib
        /// 
        /// The type to test
        /// Returns true if the type is not supported 
        internal static bool IsUnsupportedType(Type type)
        { 
            if (type.IsGenericType) 
            {
                type = type.GetGenericTypeDefinition(); 
            }

            if (unsupportedTypes.Any(t => t.IsAssignableFrom(type)))
            { 
                return true;
            } 
 
            Debug.Assert(!type.FullName.StartsWith("System.Tuple", StringComparison.Ordinal), "System.Tuple is not blocked by unsupported type check");
            return false; 
        }
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.
//---------------------------------------------------------------------- 
// 
//      Copyright (c) Microsoft Corporation.  All rights reserved.
// 
//  
//  Common defintions and functions for the server and client lib
//  
//--------------------------------------------------------------------- 

#if ASTORIA_CLIENT 
namespace System.Data.Services.Client
#else
namespace System.Data.Services
#endif 
{
    using System.Linq; 
    using System.Diagnostics; 
    using System.Globalization;
    using System.IO; 
    using System.Text;
    using System.Xml;

    ///  
    /// Common defintions and functions for the server and client lib
    ///  
    internal static class CommonUtil 
    {
        ///  
        /// List of types unsupported by the client
        /// 
        private static readonly Type[] unsupportedTypes = new Type[]
        { 
#if !ASTORIA_LIGHT  // System.Dynamic & tuples not available (as of SL 2.0)
                typeof(System.Dynamic.IDynamicMetaObjectProvider), 
                typeof(System.Tuple<>),         // 1-Tuple 
                typeof(System.Tuple<,>),        // 2-Tuple
                typeof(System.Tuple<,,>),       // 3-Tuple 
                typeof(System.Tuple<,,,>),      // 4-Tuple
                typeof(System.Tuple<,,,,>),     // 5-Tuple
                typeof(System.Tuple<,,,,,>),    // 6-Tuple
                typeof(System.Tuple<,,,,,,>),   // 7-Tuple 
                typeof(System.Tuple<,,,,,,,>)   // 8-Tuple
#endif 
        }; 

        ///  
        /// Test whether a type is unsupported by the client lib
        /// 
        /// The type to test
        /// Returns true if the type is not supported 
        internal static bool IsUnsupportedType(Type type)
        { 
            if (type.IsGenericType) 
            {
                type = type.GetGenericTypeDefinition(); 
            }

            if (unsupportedTypes.Any(t => t.IsAssignableFrom(type)))
            { 
                return true;
            } 
 
            Debug.Assert(!type.FullName.StartsWith("System.Tuple", StringComparison.Ordinal), "System.Tuple is not blocked by unsupported type check");
            return false; 
        }
    }
}

// File provided for Reference Use Only by Microsoft Corporation (c) 2007.

                        

Link Menu

Network programming in C#, Network Programming in VB.NET, Network Programming in .NET
This book is available now!
Buy at Amazon US or
Buy at Amazon UK