protected static void HandleVariableChangeNotification(XmlReader reader, CpService service, UPnPVersion upnpVersion) { string variableName = reader.LocalName; CpStateVariable stateVariable; if (!service.StateVariables.TryGetValue(variableName, out stateVariable)) // We don't know that variable - this is an error case but we won't raise an exception here return; object value = stateVariable.DataType.SoapDeserializeValue(reader, upnpVersion.VerMin == 0); service.InvokeStateVariableChanged(stateVariable, value); }