static void Main(string[] args) { ServiceHost host = new ServiceHost(typeof(StringService), new Uri("http://localhost:8080/StringService")); // Добавляем конечную точку службы с заданным интерфейсом, привязкой (создаём новую) и адресом конечной точки host.AddServiceEndpoint(typeof(IStringService), new BasicHttpBinding(), ""); // добавление точки "mex" ServiceMetadataBehavior behavior = new ServiceMetadataBehavior(); // создаем объект с метаданными behavior.HttpGetEnabled = true; // разрешаем получение метаданных с помощью HTTP/GET запроса host.Description.Behaviors.Add(behavior); // добаляем экземпляр в поведение службы // добавляем конечную точку(контракт,привязка и адрес конечной точки) host.AddServiceEndpoint(typeof(IMetadataExchange), MetadataExchangeBindings.CreateMexHttpBinding(), "mex"); //создаем конфигурацию с клиентом // Запускаем службу host.Open(); kNN.kNN kNN = new kNN.kNN(); Data = kNN.MakeData(Data); Console.WriteLine("Server is working.."); Console.ReadKey(); // Закрываем службу host.Close(); }
public string check(kNN p) { int i = -1; double n = 0; for (int j = 0; j < vectors.Length; j++) { double max = 0; foreach (string k in p.analiz_vector.Keys) { if (vectors[j].values.ContainsKey(k)) max += vectors[j].values[k]; } if (max > n) { n = max; i = j; } } if (i > -1) return vectors[i].name; else return "Couldn`t classify"; }
public void add(kNN p) { Dictionary<string, double> add_list = p.analiz_vector; if (values == null) { values = add_list; } else { foreach (string a in add_list.Keys) { if (values.ContainsKey(a)) { values[a] = (values[a] + add_list[a]) / 2; } else { values.Add(a, add_list[a]); } } } }
static void Main(string[] args) { kNN p1 = new kNN(@"articles\science-1.txt"); kNN p2 = new kNN(@"articles\science-2.txt"); kNN p3 = new kNN(@"articles\science-3.txt"); vector v1 = new vector("science"); v1.add(p1); v1.add(p2); v1.add(p3); kNN p21 = new kNN(@"articles\sport-1.txt"); kNN p22 = new kNN(@"articles\sport-2.txt"); kNN p23 = new kNN(@"articles\sport-3.txt"); vector v2 = new vector("sport"); v2.add(p21); v2.add(p22); v2.add(p23); analyser a = new analyser(new vector[] { v1, v2 }); kNN t1 = new kNN(@"articles\unknown-science.txt"); kNN t2 = new kNN(@"articles\unknown-sport.txt"); Console.WriteLine(a.check(t1)); Console.WriteLine(a.check(t2)); }