ServiceStack怎么用

這篇文章主要介紹了ServiceStack怎么用,具有一定借鑒價值,感興趣的朋友可以參考下,希望大家閱讀完這篇文章之后大有收獲,下面讓小編帶著大家一起了解一下。

創(chuàng)新互聯(lián)的團隊成員不追求數(shù)量、追求質(zhì)量。我們經(jīng)驗豐富并且專業(yè),我們之間合作時就好像一個人,協(xié)同一致毫無保留。創(chuàng)新互聯(lián)珍視想法,同時也看重過程轉(zhuǎn)化帶來的沖擊力和影響力,在我們眼中,任何細節(jié)都不容小覷。一直致力于為企業(yè)提供從主機域名、網(wǎng)站策劃、網(wǎng)站設(shè)計、電子商務(wù)商城網(wǎng)站建設(shè)、網(wǎng)站推廣、網(wǎng)站優(yōu)化到為企業(yè)提供個性化軟件開發(fā)等基于互聯(lián)網(wǎng)的全面整合營銷服務(wù)。

ServiceStack是目前使用的最舒服的.net服務(wù)開發(fā)類庫,開發(fā)簡單,速度也相當(dāng)快,而且還可以進行跨平臺,集成多種數(shù)據(jù)庫的訪問。

ServiceStack提供基于web可發(fā)布在iis的服務(wù)和單獨的應(yīng)用程序式運行服務(wù),兩種方式都比較簡單。

下邊舉例一個簡單的Rest服務(wù)開發(fā),是以單獨的應(yīng)用程序運行:

//因服務(wù)一般要求的性能都比較高,所以單獨程序是要基于console應(yīng)用程序為開始,下邊是一個最簡單的apphost的初始化,最重要是要指定監(jiān)聽的url地址

        static void Main(string[] args)

        { 

            ServiceStackHost appHost;

            appHost = new AppHost()

                .Init()

                .Start("http://localhost:7771/");

            Console.WriteLine("指定服務(wù)已啟動,監(jiān)聽端口為xxxx,請不要關(guān)閉窗

              口!");

            Console.ReadLine();

        }

    //apphost的實現(xiàn),要繼承servicestack的AppHostHttpListenerBase

 public class AppHost : AppHostHttpListenerBase

    {

       //配置rest接口所存在的編譯集合

        public AppHost() : base("ServiceBaseST", typeof(AppHost).Assembly) { }

      //apphost中的配置,主要是配置數(shù)據(jù)庫連接等,在此處配置完成后,rest的服務(wù)就都可進行使用

        public override void Configure(Container container)

        { 

         //初始化數(shù)據(jù)庫連接,ormlite也能夠支持多數(shù)據(jù)源連接

            container.Register<IDbConnectionFactory>(c => new OrmLiteConnectionFactory("連接字符串", PostgreSqlDialect.Provider));

        }

    }

 //下邊是一個簡單的helloworldservice,要繼承Service接口,同時要配置服務(wù)的

//路由,服務(wù)中的方法為Get,Post或者Any,根據(jù)路由中的類名進行實現(xiàn)

public class HelloWorldService : Service

    { 

        public Object Get(Hello hello)

        {

            string _restStr = string.Format("hello {0}!", hello.name);

            double[,] a2 = new double[,] { { 1, 2, 3 }, { 4, 5, 6 } };

            return new HelloWorldModel() { name = _restStr, userid = "test", testDoule =a2 };

        } 

    } 

   //服務(wù)的路由配置

    [Route("/hello/{name}", "GET")]

    public class Hello : IReturn<HelloWorldModel>

    {

        public string name { get; set; }

    }

   //ServiceStack的服務(wù)是以model為基礎(chǔ)的,所以一般都定義model進行返回,

  //在客戶端使用時,url后邊加上format=json或者format=xml,就會返回相應(yīng)格

//式的數(shù)據(jù)

  public class HelloWorldModel

    {

        public string userid { get; set; }

        public string name { get; set; } 

        public double[,] testDoule { get; set; }

    }

//客戶端訪問的url:http://localhost:7771//hello/name參數(shù)?format=json或者format=xml

ServiceStack怎么用

感謝你能夠認(rèn)真閱讀完這篇文章,希望小編分享的“ServiceStack怎么用”這篇文章對大家有幫助,同時也希望大家多多支持創(chuàng)新互聯(lián),關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,更多相關(guān)知識等著你來學(xué)習(xí)!

文章標(biāo)題:ServiceStack怎么用
分享路徑:http://muchs.cn/article48/ipgohp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站改版靜態(tài)網(wǎng)站、電子商務(wù)品牌網(wǎng)站建設(shè)、全網(wǎng)營銷推廣自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站網(wǎng)頁設(shè)計