Exemplo n.º 1
0
        private void ValidateInterface(Guid iid)
        {
            if (!ComPlusTypeValidator.IsValidInterface(iid))
            {
                throw System.ServiceModel.DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(System.ServiceModel.SR.GetString("InvalidWebServiceInterface", new object[] { iid })));
            }
            bool flag = false;

            foreach (ContractInfo info in this.info.Contracts)
            {
                if (info.IID == iid)
                {
                    if (info.Operations.Count == 0)
                    {
                        throw System.ServiceModel.DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(System.ServiceModel.SR.GetString("RequireConfiguredMethods", new object[] { iid })));
                    }
                    flag = true;
                    break;
                }
            }
            if (!flag)
            {
                throw System.ServiceModel.DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(System.ServiceModel.SR.GetString("RequireConfiguredInterfaces", new object[] { iid })));
            }
        }
Exemplo n.º 2
0
        void ValidateInterface(Guid iid)
        {
            // Filter known invalid IIDs
            if (!ComPlusTypeValidator.IsValidInterface(iid))
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(SR.GetString(SR.InvalidWebServiceInterface, iid)));
            }

            // Filter out interfaces with no configured methods
            bool configuredInterface = false;

            foreach (ContractInfo contractInfo in this.info.Contracts)
            {
                if (contractInfo.IID == iid)
                {
                    if (contractInfo.Operations.Count == 0)
                    {
                        throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(SR.GetString(SR.RequireConfiguredMethods, iid)));
                    }

                    configuredInterface = true;
                    break;
                }
            }

            // Filter out interfaces that aren't configured at all
            if (!configuredInterface)
            {
                throw DiagnosticUtility.ExceptionUtility.ThrowHelperError(Error.ListenerInitFailed(SR.GetString(SR.RequireConfiguredInterfaces, iid)));
            }
        }