public string[] GetChainData(ParameterClass data) { MultiChain chain = new MultiChain(); var verified = chain.VerifyMessage(new MessageData { address = data.Address, signature = data.Signature, message = data.PhysicianId }) == "true"; var res = chain.GetStreamKeys(data.Streamname); var autorisatieStream = this.GetChainName(data.PatientId, data.PhysicianId, authorisation); var streamitems = chain.GetStreamItemByKey(autorisatieStream, authorisation); var result = streamitems == null ? new StreamItem[0] : streamitems.streamitems.ToArray(); if (result.Any() && this.DeEncryptHexData(result.Last().data).Split(';').Select(f => data.PhysicianId) .ToArray().Any()) { var linkarray = new List <string>(); foreach (var i in res.streamkeys) { linkarray.AddRange(chain.GetStreamItemByKey(data.Streamname, i.key).streamitems.Select(f => this.DeEncryptHexData(f.data)).ToArray()); } var datalist = linkarray.Select(f => File.ReadAllText(f.Split('|')[0])).ToArray(); return(datalist.ToArray()); } return(null); }