Ejemplo n.º 1
0
        public void TestLinkContent()
        {
            LinkContent stringLink = new LinkContent("test и тест");

            Assert.AreEqual("test и тест", LinkContent.ToString(stringLink.Data));

            LinkContent DoubleLink = new LinkContent(123.321d);

            Assert.AreEqual(123.321d, LinkContent.ToDouble(DoubleLink.Data));
        }
Ejemplo n.º 2
0
        /// <summary>
        /// Получение произвольного идентификатора. узла
        /// </summary>
        /// <param name="scAddress">SC-адрес узла</param>
        /// <param name="identifierType">тип идентификатора</param>
        /// <returns>идентификатор</returns>
        public Identifier GetNodeIdentifier(ScAddress scAddress, Identifier identifierType)
        {
            Identifier identifier = Identifier.Invalid;

            if (knowledgeBase.IsAvaible)
            {
                var template = new ConstructionTemplate(scAddress, ElementType.ConstantCommonArc_c, ElementType.Link_a, ElementType.PositiveConstantPermanentAccessArc_c, GetNodeAddress(identifierType));
                var command  = new IterateElementsCommand(template);
                var response = (IterateElementsResponse)knowledgeBase.ExecuteCommand(command);
                if (response.Constructions.Count == 1)
                {
                    ScAddress link            = response.Constructions[0][2];
                    var       commandGetLink  = new GetLinkContentCommand(link);
                    var       responseGetLink = (GetLinkContentResponse)knowledgeBase.ExecuteCommand(commandGetLink);
                    if (responseGetLink.Header.ReturnCode == ReturnCode.Successfull)
                    {
                        identifier = LinkContent.ToString(responseGetLink.LinkContent);
                    }
                }
            }
            return(identifier);
        }
Ejemplo n.º 3
0
 public void Run()
 {
     Console.WriteLine(LinkContent.ToString(new LinkContent("product").GetBytes()));
 }