Example #1
0
        public void OfType()
        {
            var query = fruits.OfType <string>();

            foreach (string str in query)
            {
                Console.WriteLine(str);
            }
        }
Example #2
0
        public static int[] FilterArray(object[] arr)
        {
            System.Collections.ArrayList list = new System.Collections.ArrayList(arr.Length);
            for (int i = 0; i < arr.Length; i++)
            {
                list.Add(arr[i]);
            }
            IEnumerable <int> query1 = list.OfType <int>();

            return(query1.ToArray());
        }
Example #3
0
        static void c()
        {
            System.Collections.ArrayList items = new System.Collections.ArrayList(4);
            items.Add("Shoes");
            items.Add("Clothes");
            items.Add(15.5); // kiểu số

            // Áp dụng OfType() vào ArrayList để tìm các phần tử là kiểu chuỗi
            IEnumerable <string> query1 = items.OfType <string>();

            // Xuất danh sách các phần tử kiểu chuỗi trong 1 ArrayList
            foreach (string item in query1)
            {
                Console.WriteLine(item);
            }
        }
Example #4
0
 static void Main(string[] args)
 {
     System.Collections.ArrayList fruits = new System.Collections.ArrayList(4);
     fruits.Add("Mango");
     fruits.Add("Orange");
     fruits.Add("Apple");
     fruits.Add(3.0);
     fruits.Add("Banana");
     fruits.Add(new Stock());
     // Apply OfType() to the ArrayList.
     var query1 = fruits.OfType<Stock>();
     Console.WriteLine("Elements of type 'stock' are:");
     foreach (var fruit in query1)
     {
         Console.WriteLine(fruit);
     }
     
 }
        private void Method()
        {
            var myArrayList = new System.Collections.ArrayList
            {
                System.Drawing.Color.Red,
                new System.Drawing.Point(0, 0),
                System.Drawing.Color.Green,
                new System.Drawing.Point(10, 20),
                System.Drawing.Color.Blue,
                new System.Drawing.Point(20, 30)
            };

            var query1 = myArrayList.OfType <System.Drawing.Color>().Select(color => color);

            foreach (var currentResult in query1)
            {
                Console.WriteLine(currentResult.Name);
            }



            var procesArray = new System.Collections.ArrayList();
            var query       = procesArray.Cast <System.Diagnostics.Process>().Select(process => process);
        }
Example #6
0
        public void TestLinqOfType()
        {
            var connectionString = _connectionString + "StoreName=" + Guid.NewGuid();
            var context = new MyEntityContext(connectionString);

            var entity1 = context.Entities.Create();
            entity1.SomeString = "An entity";
            var animal1 = context.Animals.Create();
            animal1.Name = "Mutley";
            var person1 = context.Persons.Create();
            person1.Name = "Jen Williams";
            var company1 = context.Companies.Create();
            company1.Name = "Networked Planet";
            var person2 = context.Persons.Create();
            person2.Name = "Kal Ahmed";
            var entity2 = context.Entities.Create();
            entity2.SomeString = "Another entity";

            context.SaveChanges();
            Assert.AreEqual(2, context.Persons.Count());
            Assert.AreEqual(2, context.Entities.Count());
            Assert.AreEqual(1, context.Companies.Count());
            Assert.AreEqual(1, context.Animals.Count());

            var arrayList = new System.Collections.ArrayList(5) {entity1, animal1, person1, company1, person2, entity2};

            var entities = arrayList.OfType<Entity>();
            Assert.AreEqual(2, entities.Count());

            
        }
Example #7
0
        void ParseTelnet(StringBuilder sb)
        {
            while (telnet.Available > 0)
            {
                int input = telnet.GetStream().ReadByte();
                System.Collections.ArrayList buffer = new System.Collections.ArrayList();
                byte[] bytestosend;
                switch (input)
                {
                case -1:
                    break;

                case (int)Verbs.IAC:     //interpret as command
                    int inputverb = telnet.GetStream().ReadByte();
                    if (inputverb == -1)
                    {
                        break;
                    }
                    switch (inputverb)
                    {
                    case (int)Verbs.IAC:
                        sb.Append(inputverb);
                        break;

                    case (int)Verbs.DO:
                        int inputoption = telnet.GetStream().ReadByte();
                        if (inputoption == -1)
                        {
                            break;
                        }
                        switch (inputoption)
                        {
                        case (int)SubCommand.TermType:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WONT);
                            buffer.Add((byte)SubCommand.TermType);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.TermSpeed:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WONT);
                            buffer.Add((byte)SubCommand.TermSpeed);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.XDisplay:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WONT);
                            buffer.Add((byte)SubCommand.XDisplay);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.EnvirOption:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WONT);
                            buffer.Add((byte)SubCommand.EnvirOption);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.Echo:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WONT);
                            buffer.Add((byte)SubCommand.Echo);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.WinSize:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WILL);
                            buffer.Add((byte)SubCommand.WinSize);
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.SNEG);
                            buffer.Add((byte)SubCommand.WinSize);
                            buffer.Add((byte)0);
                            buffer.Add((byte)179);
                            buffer.Add((byte)0);
                            buffer.Add((byte)54);
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.ENDSNEG);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.RFC:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.WILL);
                            buffer.Add((byte)SubCommand.RFC);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;
                        }
                        break;

                    case (int)Verbs.WILL:
                        inputoption = telnet.GetStream().ReadByte();
                        if (inputoption == -1)
                        {
                            break;
                        }
                        switch (inputoption)
                        {
                        case (int)SubCommand.SGA:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.DO);
                            buffer.Add((byte)SubCommand.SGA);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.Status:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.DONT);
                            buffer.Add((byte)SubCommand.Status);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;

                        case (int)SubCommand.Echo:
                            buffer.Add((byte)Verbs.IAC);
                            buffer.Add((byte)Verbs.DO);
                            buffer.Add((byte)SubCommand.Echo);
                            bytestosend = buffer.OfType <byte>().ToArray();
                            telnet.GetStream().Write(bytestosend, 0, bytestosend.Length);
                            buffer.Clear();
                            break;
                        }
                        break;

                    case (int)Verbs.SNEG:
                        inputoption = telnet.GetStream().ReadByte();
                        if (inputoption == -1)
                        {
                            break;
                        }
                        if (inputoption == (int)SubCommand.RFC)
                        {
                            int status = telnet.GetStream().ReadByte();
                            if (status == 1)
                            {
                                if (telnet.Available > 0)
                                {
                                    break;
                                }
                                do
                                {
                                    Thread.Sleep(100);
                                }while (telnet.Available <= 0);
                            }
                        }

                        break;

                    case (int)Verbs.ENDSNEG:
                        inputoption = telnet.GetStream().ReadByte();
                        break;
                    }
                    break;

                default:
                    sb.Append((char)input);
                    break;
                }
            }
        }