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 }))); } }
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))); } }