Как я могу сделать WCF в C # для Windows на основе системы? - PullRequest
0 голосов
/ 14 июня 2011

Я хочу сделать приложение WCF или [приложение] в c # для ответных запросов, которые я отправляю через приложение на основе HTML.

предположим, что я отправляю запросы на URL, и они отвечают за это, вызывая socet TCP, который уже установлен в системе пользователя.

Можете ли вы сказать мне, что можно вызывать их локально через HTML. они позволяют им звонить.

Могу ли я сделать приложение в HTML, CSS, Javascript, которые вызывают WCF и WCF отвечают на запросы.

Ответы [ 2 ]

2 голосов
/ 14 июня 2011

WCF - это коммуникационная структура, которая поддерживает все сценарии, которые вы упоминаете.К WCF легко получить доступ как из веб-технологий, так и из окон.]

РЕДАКТИРОВАТЬ

Один файл без конфигурации службы WCF.

using System.ServiceModel;
using System.ServiceModel.Description;
using System.Runtime.Serialization;
using System;

[ServiceContract]
public interface  AddStuff
{
    [OperationContract]
    int Add(int X,int Y);
}

public class opAddStuff : AddStuff
{
    public int Add(int X, int Y)
    {
        return X + Y;
    }
}

public class Pgm
{
    static void Main(string[] args)
    {
        string httpAddr = "http://127.0.0.1:6001/AddStuff";
        string netAddr= "net.tcp://127.0.0.1:5001/AddStuff";

        System.ServiceModel.ServiceHost SH = new ServiceHost(typeof(opAddStuff),new Uri(httpAddr));

        BasicHttpBinding B = new BasicHttpBinding();
        NetTcpBinding NB = new NetTcpBinding();

        SH.AddServiceEndpoint(typeof(AddStuff), B, httpAddr);
        SH.AddServiceEndpoint(typeof(AddStuff), NB, netAddr);



        System.ServiceModel.Description.ServiceMetadataBehavior smb = SH.Description.Behaviors.Find<ServiceMetadataBehavior>();
       // If not, add one
        if (smb == null)
            smb = new ServiceMetadataBehavior();

        smb.HttpGetEnabled = true;
        smb.MetadataExporter.PolicyVersion = PolicyVersion.Policy15;

        SH.Description.Behaviors.Add(smb);
        SH.AddServiceEndpoint(  ServiceMetadataBehavior.MexContractName,  MetadataExchangeBindings.CreateMexHttpBinding(),  "mex");

        SH.Open();

        Console.WriteLine("Service at your service");
        string crap = Console.ReadLine();



    }
}
1 голос
/ 14 июня 2011

Это достаточно простая отправная точка http://www.codeproject.com/KB/WCF/GettingStartedWithWCF.aspx.

Если вы хотите сразу начать работу с кодом, создайте новый проект типа «Приложение-служба WCF» в Visual Studio. Затем вы получите какой-нибудь скелетный сервис, который сможете запустить. Щелкните правой кнопкой мыши файл Service.svc -> Обзор. Страница «Справка» службы (синяя тема) будет отображаться в Internet Explorer, и вуаля у вас работает служба wcf.

Код службы находится в файле Service.svc.cs, а контракт, реализованный службой, - в файле IService.cs.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...