Looking for servicestack Keywords? Try Ask4Keywords

servicestackErste Schritte mit ServiceStack


Bemerkungen

In diesem Abschnitt erhalten Sie einen Überblick darüber, was Service Pack ist und warum ein Entwickler es möglicherweise verwenden möchte.

Es sollte auch alle großen Themen im Servicestapel erwähnen und auf die verwandten Themen verweisen. Da die Dokumentation für den Servicestapel neu ist, müssen Sie möglicherweise erste Versionen dieser verwandten Themen erstellen.

Installation oder Setup

Sie können ServiceStack auf drei Arten installieren:

  • Vollständige Visual Studio-Vorlagen (selbst gehostet)
  • Starten Sie von Grund auf ServiceStack Self hosted (Console App).
  • Führen Sie ServiceStack in Asp.net MVC aus.

Komplette visuelle Studio-Vorlagen

Informationen dazu finden Sie hier: https://github.com/ServiceStack/ServiceStackVS .

  1. Laden Sie das Servicestack Visual Studio-Plugin herunter: https://visualstudiogallery.msdn.microsoft.com/5bd40817-0986-444d-a77d-482e43a48da7
  2. Starten Sie ein neues Projekt in Visual Studio und wählen Sie eine der Vorlagen aus.

Bei Null anfangen (Selfhosted)

Eine vollständige Anleitung finden Sie hier: https://github.com/ServiceStack/ServiceStack/wiki/Self-hosting

Einrichten:

  1. Erstellen Sie eine Konsolenanwendung
  2. Installieren Sie ServiceStack über nuget: Install-Package ServiceStack
  3. Richten Sie Ihren Basiscode ein. ServiceStack verwendet eine AppHost um alles gemeinsam zu AppHost :
 //This your main entry point of the application
 public class AppHost : AppSelfHostBase {
    public AppHost() 
      : base("HttpListener Self-Host", typeof(HelloService).Assembly) {}

    public override void Configure(Funq.Container container) { }
}

//Run it!
static void Main(string[] args)
{
    var listeningOn = args.Length == 0 ? "http://*:1337/" : args[0];
    var appHost = new AppHost()
        .Init()
        .Start(listeningOn);

    Console.WriteLine("AppHost Created at {0}, listening on {1}", 
        DateTime.Now, listeningOn);

    Console.ReadKey();
}
 

Jetzt können Sie mit der Entwicklung Ihrer API-Dienste beginnen.

Mvc-Integration

Das vollständige Handbuch zur Mvc-Integration finden Sie unter https://github.com/ServiceStack/ServiceStack/wiki/Mvc-integration

Laden Sie zuerst Ihre Nuget-Pakete herunter: Install-Package ServiceStack.Mvc

Richten Sie Ihren ServiceStack-Apphost ein

public class AppHost : AppHostBase
{
    public AppHost() : base("MVC 4", typeof(MyServices).Assembly) {}

    public override void Configure(Container container)
    {            
        SetConfig(new HostConfig { 
            HandlerFactoryPath = "api" 
        });

        ControllerBuilder.Current.SetControllerFactory(
            new FunqControllerFactory(container));
    }
}

//Bootstrap your appHost through MVC Global.asax:
public class Global : System.Web.HttpApplication
{
    protected void Application_Start(object sender, EventArgs e)
    {
        new AppHost().Init();
    }
}
 

Um nun ServiceStack-Dienste auszuführen, können wir web.Config hinzufügen, damit ServicStack unter einem bestimmten Pfad ausgeführt wird, z. B .: /api/*

<location path="api">
  <system.web>
    <httpHandlers>
      <add path="*" type="ServiceStack.HttpHandlerFactory, ServiceStack" 
           verb="*"/>
    </httpHandlers>
  </system.web>

  <system.webServer>
    <modules runAllManagedModulesForAllRequests="true"/>
    <validation validateIntegratedModeConfiguration="false" />
    <handlers>
      <add path="*" name="ServiceStack.Factory" 
           type="ServiceStack.HttpHandlerFactory, ServiceStack" verb="*" 
           preCondition="integratedMode" 
           resourceType="Unspecified" allowPathInfo="true" />
    </handlers>
  </system.webServer>
</location>