文档章节

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

丁川
 丁川
发布于 2016/10/02 11:57
字数 600
阅读 17
收藏 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
安装window下的redis,redis可视化管理工具(Redis Desktop Manager)安装,基础使用,实例化项目

以下包括内容: 一、redis下载安装,启动 二、Redis可视化管理工具(Redis Desktop Manager)安装 三、实例化项目 一、redis下载安装,启动 1,redis官方下载地址:https://redis.io/downlo...

saucxs
08/11
0
0
安装redis服务器 jedis分片存放数据到redis服务器

redis windows 下载地址:https://github.com/ServiceStack/redis-windows 一、下载的安装包解压到盘符的指定位置,如下结构:(纯手敲,如果有缺失,见谅) Redis.doc redis-benchmark.exe r...

薄暮凉年
2015/08/07
0
0
(译)在ASP.NET Web API中使用Redis

本文将介绍如何在ASP.NET Web API应用程序中使用Redis作为数据存储。利用ServiceStack.Redis库以及它强类型的Redis 客户端,实现如何建模和存储一对多的关系,以及使用Autofac的Web API依赖注...

jieqiuming
2014/05/01
0
0
A Fast, Simple, Typed ORM for .NET

Join the ServiceStack Google+ group or follow @servicestack for updates. A Fast, Simple, Typed ORM for .NET OrmLite's goal is to provide a convenient, DRY, config-free, RDBMS-ag......

postdep
2014/09/12
0
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

day60-20180818-流利阅读笔记-待学习

钉钉:工作的归工作,生活的…也归工作? 毛西 2018-08-18 1.今日导读 你用过“钉钉”么?被公司要求使用钉钉的感受是如何的呢?这款阿里巴巴旗下的移动办公社交平台在弯道超车微信、为许多企...

aibinxiao
51分钟前
8
0
Kubernetes的HTTPS和证书问题,汇总

通过Kubernetes建立服务网站,需要干的事情和HTTPS和证书问题,汇总如下: 建立Nginx服务器 搞服务器第一步,Ubuntu 18.04设置静态IP 安装Nginx服务。 Kubernetes的deployment使用 创建服务,...

openthings
今天
2
0
php 使用redis锁限制并发访问类

1.并发访问限制问题 对于一些需要限制同一个用户并发访问的场景,如果用户并发请求多次,而服务器处理没有加锁限制,用户则可以多次请求成功。 例如换领优惠券,如果用户同一时间并发提交换领...

豆花饭烧土豆
今天
0
0
Linux环境搭建 | 手把手教你配置Linux虚拟机

在上一节 「手把你教你安装Linux虚拟机」 里,我们已经安装好了Linux虚拟机,在这一节里,我们将配置安装好的Linux虚拟机,使其达到可以开发的程度。 Ubuntu刚安装完毕之后,还无法进行开发,...

良许Linux
今天
0
0
(三)Nginx配置·续

概述 前文写了关于Nginx环境配置,但是还没有完,接下来将会继续讲三个相关的配置 主要是以下三个 1.Nginx访问日志 2.Nginx日志切割 3.静态文件不记录日志和过期时间 Nginx访问日志 1.先看看...

杉下
今天
1
0

没有更多内容

加载失败,请刷新页面

加载更多

下一页

返回顶部
顶部