文档章节

ServiceStack 项目实例 005 使用第一个服务功能 (在MVC项目中)

丁川
 丁川
发布于 2016/10/02 11:57
字数 600
阅读 19
收藏 1

    建立好服务后,我们就可以在MVC项目中使用这个服务,在使用这个服务之前,需要先确定一下它所在端口,只需要在SS项目上点右键,将其设置为启动项目,然后运行一下SS项目,在浏览器地址栏,就可以看到这个服务的端口号,并且也能看到已经添加到其中的服务。(运行的效果可以在001节中的截图看到,001节中的端口为59068。)

 

     在MVC的Controller目录下添加一个控制器NewsController.cs,在NewsController.cs中加入一个 Action, 用来显示添加新闻的页面

 

     

1

2

3

4

public ActionResult Create()

        {

            return View();

        }

 

      在Views目录下添加目录News,在News中新建文件Create.cshtml,或者在控制器中代码上点右键直接直接建立视图页,在Create.cshtml视图中添加

     

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24

25

26

<h2>添加新闻</h2>

<div>

    <form method="POST" id="newsStory" class="reply" >

        <fieldset>

            <div class="row">

                <div class="col-lg-4 col-md-4 col-sm-4 col-xs-12">

                    <label>标题: <span>*</span></label>

                    <input class="form-control" id="headline" name="headline" type="text" value="" required=""/>

                </div>

                <div class="col-lg-3 col-md-3 col-sm-3 col-xs-12">

                    <label>日期: </label>

                    <input class="form-control" id="date" name="date" value="" type="text"/>

                </div>

            </div>

            <div class="row">

                <div class="col-lg-12 col-md-12 col-sm-12 col-xs-12">

                    <label>内容: <span>*</span></label>

                    <textarea class="form-control" id="text" name="text" rows="3" cols="40" required> </textarea>

                </div>

            </div>

        </fieldset>

        <button class="btn-normal btn-color submit bottom-pad" type="submit">Send</button>

         

         

    </form>

</div>

 

     在NewsController.cs 中添加一个Action,接收上一个页面的表单提交过来的数据,注意加上声明

[HttpPost],指定接收POST数据

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

[HttpPost]

        public ActionResult Create(NewsStory newsStory)

        {

            try

            {

                var service = new JsonServiceClient("http://localhost:59068/");

                service.Send<SubmissionResponse>(new Submission()

                {

                    Body = newsStory.Text,

                    Headline = newsStory.Headline,

                    SubmissionTime = newsStory.Date

                });               

                

            }

            catch(Exception ex)

            {

                ViewBag.Message = ex.Message;

            }

            return View();

        }

     

    运行测试:

      将SS项目设置为启动项目,运行项目启动服务,

      启动服务后,在MVC项目上点右键,选择“调试-启动新实例”,

     wKioL1SFGaLTjvNoAAPoad3w2T4734.jpg

 

    启动MVC站点后,在添加新闻的页面添加一条新闻测试,提交成功后,可以在数据库中的Submission表中看到新增的数据

     Submission表是在DataRepository的AddSubmission函数中通过 db.CreateTable<Submission>();自动创建的,不需要手工建立这个表

本文转载自:http://soaop.blog.51cto.com/6164600/1587471

共有 人打赏支持
丁川
粉丝 4
博文 52
码字总数 4829
作品 0
南宁
程序员
私信 提问
ServiceStack 简单使用

提到构建WebService服务,大家肯定第一个想到的是使用WCF,因为简单快捷嘛。首先要说明的是,本人对WCF不太了解,但是想快速建立一个WebService,于是看到了MSDN上的这一篇文章 Building Cro...

麦田守望者LEO
07/23
0
0
redis在windows下面运行稳定吗?

有没有人在实际项目上将redis运行在windows下面? 因为redis官方不支持win,github上面的ServiceStack是微软搞出来的。 不知道大家在实际项目中应用的效果怎么样?...

孙小东
2015/08/12
2.6K
6
ServiceStack 4.5.10 发布,.NET Web 服务框架

ServiceStack 4.5.10 已发布,Service Stack 是一个高性能的 .NET Web 服务框架,简化了开发 XML、JSON、JSV 和 WCP SOAP Web 服务。它定义了符合 Martin Fowlers 数据传输对象模式,这是一个...

王练
2017/06/11
1K
2
ServiceStack v4.5.4 发布,支持 .NET Core

ServiceStack v4.5.4 发布了,该版本是一个针对 v4.5.2 的快速修复版本,修复了一些NuGet包的问题。 Service Stack 是一个高性能的 .NET Web 服务框架,简化了开发 XML、JSON、JSV 和 WCP SO...

王练
2016/10/24
2.4K
13
ServiceStack做WebApi服务器的问题

ServiceStack做WebApi服务器时怎样获取客户端访问者的IP信息,客户端请求过来的数据流信息? 我使用Request.UserHostAddress获取到的是 "[::1]:8888" (我开的端口号是8888), 数据流信息Req...

89655408
2016/01/13
1K
0

没有更多内容

加载失败,请刷新页面

加载更多

CentOS配置Tomcat监听80端口,虚拟主机

Tomcat更改默认端口为80 更改的配置文件是: /usr/local/tomcat/conf/server.xml [root@test-a ~]# vim /usr/local/tomcat/conf/server.xml # 找到 Connector port="8080" protocol="HTTP/1......

野雪球
今天
5
0
《稻盛和夫经营学》读后感心得体会3180字范文

《稻盛和夫经营学》读后感心得体会3180字范文: 一代日本经营之圣稻盛和夫凭借刻苦勤奋的精神以及深植于佛教的商业道德准则,成为了“佛系”企业家的代表人物。在《稻盛和夫经营学》“领导人...

原创小博客
今天
3
0
java框架学习日志-5(常见的依赖注入)

依赖注入(dependency injection) 之前提到控制反转(Inversion of Control)也叫依赖注入,它们其实是一个东西,只是看的角度不同,这章详细说一下依赖注入。 依赖——指bean对象创建依赖于...

白话
今天
4
0
红外接收器驱动开发

背景:使用系统的红外遥控软件没有反应,然后以为自己接线错误,反复测试,结果烧坏了一个红外接收器,信号主板没有问题。所以自己开发了一个红外接收器的python驱动。接线参见https://my.os...

mbzhong
今天
2
0
ActiveMQ消息传送机制以及ACK机制详解

AcitveMQ是作为一种消息存储和分发组件,涉及到client与broker端数据交互的方方面面,它不仅要担保消息的存储安全性,还要提供额外的手段来确保消息的分发是可靠的。 一. ActiveMQ消息传送机...

watermelon11
今天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部