2009-11-28 2 views
1

Я новичок в WCF, и я хочу знать, можно ли создать службу WCF в своем собственном приложении и разместить ее в IIS. Тогда будет использоваться другое приложение ASP.NET. Пока все примеры, которые я видел, имеют службу WCF внутри одного и того же решения ASP.NET. Если да, не могли бы вы дать некоторые подсказки о том, как это сделать? Я хочу создать простой пример, который извлекает фамилию человека на основе идентификатора, а затем потребляет его из отдельного приложения ASP.NET.Новое для веб-служб WCF

спасибо.

ответ

1

Да, вы можете иметь его «автономно» - в Visual Studio начинаются с приложения WCF - это приложение будет размещено в IIS.

Ниже очень простой шаблон VS.

using System; 
using System.Collections.Generic; 
using System.Linq; 
using System.Runtime.Serialization; 
using System.ServiceModel; 
using System.Text; 

namespace WcfService1 
{ 
    // NOTE: If you change the class name "Service1" here, you must also update the reference to "Service1" in Web.config and in the associated .svc file. 
    public class Service1 : IService1 
    { 
     public string GetLastName(int id) 
     { 
      //Do Data Access here 
      string surname = "SomeSurname"; 
      return surname; 
     } 

     public CompositeType GetDataUsingDataContract(CompositeType composite) 
     { 
      if (composite.BoolValue) 
      { 
       composite.StringValue += "Suffix"; 
      } 
      return composite; 
     } 
    } 
} 
+0

Вам нужно выделить строки кода в текстовом редакторе, а затем использовать кнопку «код» (010 101) или нажать Ctrl-K на клавиатуре, чтобы эти строки были отформатированы красиво (и выделен синтаксис) –

+0

Спасибо koosk за ваш пример. с этим очень хорошо начинать. – Erica

1

Да, абсолютно - ваш сервис WCF может жить в сборке библиотеки классов, а его размещение в IIS - это арахис.

Другое приложение ASP.NET может затем вызвать его и использовать его службы. Совершенно никаких проблем.

Что касается ресурсов: есть MSDN WCF Developer Center, в котором есть все, начиная от учебников начинающих и заканчивая статьями и образцом кода.

Кроме того, я бы порекомендовал вам взглянуть на Pluralsight screen casts on WCF - это отличная серия происходит от «Creating your first WCF service» и «Creating your first WCF client» весь путь к весьма продвинутым темам. Аарон Сконнар очень хорошо объясняет все в 10-15 минутах скринкастов - очень рекомендуется!

+0

Спасибо большое за помощь. – Erica

+0

Я уже смотрю учебные пособия, которые вы связали для меня, они действительно хороши. Благодарю. – Erica

0

Ответ да (у koosk и marc_s есть хорошие ответы) - однако причина для примеров заключается в том, как они заслуживают краткого комментария.

Если вы посмотрите на примеры, вы, вероятно, увидите (по крайней мере) два проекта, один для образца сервиса и один для примера приложения, который его потребляет, теоретически вы могли бы вывести проекты в отдельные решения, сервис вверх, а затем приложение-потребитель, и он все равно будет работать (теоретически, потому что вам нужно получить правильные зависимости в обоих проектах).

Причина, по которой клиент и услуга в том же решении заключается в том, что она позволяет визуальной студии получить умный способ помочь вам с вашей отладкой, когда вы запустите клиент, он автоматически начнет обслуживание для вас, и тогда вы должны быть в случае необходимости может перейти от клиента к службе.

Стоит помнить, что решение может содержать любое количество понятных приложений, а также библиотек и т. Д., Необходимых для поддержки этих приложений, его просто оболочка - приложение (услуга или клиент в этом случае) - это еще один проект в решение.

+0

Большое спасибо за информацию, теперь я понимаю, почему примеры находятся в одном решении. – Erica

Смежные вопросы