C# 超详细的WebService创建、发布与调用(VS2019)

1.编写接口

在这里插入图片描述
这里我选择的是 “ASP.NET Web应用程序(.NET Framework)”。
在这里插入图片描述
填写好项目名称、选择项目位置以及所使用的框架,这里我用的是“.NET Framework 4”框架,然后点击创建。
在这里插入图片描述
继续点击创建。
在这里插入图片描述
打开解决方案资源管理器-右键创建的Web项目-添加-新建项
在这里插入图片描述

在这里插入图片描述
添加 web 服务(AMSX)
在这里插入图片描述
在这里除了默认的一个方法,自己又写了两个方法。

        [WebMethod]
        public int GetInt()
        {
            int a = 1;
            int b = 2;
            return a + b;
        }
        [WebMethod]
        public string GetNameByStr(string name)
        {
            return "你好:" + name;
        }

在这里插入图片描述
然后我们启动项目。
在这里插入图片描述

在这里插入图片描述
在上面我们可以看到我们所写的三个方法,我选择其中一个点进去。
在这里插入图片描述

点击调用后我们可以看到输出了“你好:张三”。
在这里插入图片描述
其他两个方法也是一样的,点击调用都能看到我们所写的返回结果,至此说明我们所写的没有问题,接下来我们把所写的发布到IIS上面去。

2.发布接口

在这里插入图片描述
选择文件夹,点击下一步。
在这里插入图片描述
选择发布的文件夹位置,这里可以自己选择,但是一定要记住你选择的位置,这里我就采用默认的发布位置,即在当前项目的 bin\app.publish 文件夹下。点击完成
在这里插入图片描述
然后我们点击发布即可。
在这里插入图片描述
注:这里有个小细节,当我们更新Web服务里面的内容的时候,再次发布的时候我们需要注意。
在这里插入图片描述
打开项目所在的位置,这里面的内容即为我们所发布的内容。
在这里插入图片描述
然后我们打开IIS管理器(不会打开IIS的请自行百度,这里就不做教学了)。
在这里插入图片描述
右键网站选择添加网站。
在这里插入图片描述
对添加的网站进行相关设置后点击确定。
在这里插入图片描述
在这里插入图片描述
这个时候我们发现打开的网站出现了403.14错误。
在这里插入图片描述
我们只需要:
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
再次浏览即可正常访问。
在这里插入图片描述
点击WebService1.asmx
在这里插入图片描述
能正常打开,并且能正常调用方法说明发布成功。
在这里插入图片描述
至此,我们发布网站的步骤进行完毕,接来了我们将在程序中调用我们说发布的方法并获取到相应的值。

3.调用接口

右键项目-添加-服务引用
在这里插入图片描述
打开刚刚启动的网站,复制这个地址粘贴到服务引用中。
在这里插入图片描述
在这里插入图片描述
接下来点击高级
在这里插入图片描述
添加Web 引用(W)-在打开的界面中的URL中输入刚刚复制的网址-点击蓝色箭头-添加引用®
在这里插入图片描述
即可在解决方案资源管理器中看到我们所添加的服务引用
在这里插入图片描述
接下来我们简单的添加一个控制应用台项目来实现方法的调用。
在这里插入图片描述
点击下一步
在这里插入图片描述

选择好位置,点击创建。
在这里插入图片描述

控制台应用程序创建完毕。
在这里插入图片描述
右键控制图应用程序中的引用
在这里插入图片描述
在这里插入图片描述
在再程序中使用引用
在这里插入图片描述
附上代码

using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using WebTest.WebReference;


namespace ConsoleWebCall
{
    class Program
    {
        static void Main(string[] args)
        {
            WebService1 webService1 = new WebService1();
            string str = webService1.HelloWorld();
            string str1 = webService1.GetNameByStr("张三");
            int i = webService1.GetInt();
            Console.WriteLine(str);
            Console.WriteLine(str1);
            Console.WriteLine(i);
            Console.ReadKey();
        }
    }
}

最后结果如图所示:
在这里插入图片描述
这样我们就完成了一个web服务的创建、发布、使用。
如果对你有帮助,请帮忙点个赞。

### 大模型对齐微调DPO方法详解 #### DPO简介 直接偏好优化(Direct Preference Optimization, DPO)是一种用于改进大型语言模型行为的技术,该技术通过结合奖励模型训练和强化学习来提升训练效率稳定性[^1]。 #### 实现机制 DPO的核心在于它能够依据人类反馈调整模型输出的概率分布。具体来说,当给定一对候选响应时,DPO试图使更受偏好的那个选项具有更高的生成概率。这种方法不仅简化了传统强化学习所需的复杂环境设置,而且显著增强了模型对于多样化指令的理解能力和执行精度[^2]。 #### PAI平台上的实践指南 为了便于开发者实施这一先进理念,在PAI-QuickStart框架下提供了详尽的操作手册。这份文档覆盖了从环境配置直至完成整个微调流程所需的一切细节,包括但不限于数据准备、参数设定以及性能评估等方面的内容。尤其值得注意的是,针对阿里云最新发布的开源LLM——Qwen2系列,文中给出了具体的实例说明,使得即使是初次接触此类工作的用户也能顺利上手。 ```python from transformers import AutoModelForCausalLM, Trainer, TrainingArguments model_name_or_path = "qwen-model-name" tokenizer_name = model_name_or_path training_args = TrainingArguments( output_dir="./results", per_device_train_batch_size=8, num_train_epochs=3, ) trainer = Trainer( model_init=lambda: AutoModelForCausalLM.from_pretrained(model_name_or_path), args=training_args, train_dataset=train_dataset, ) # 假设已经定义好了train_dataset trainer.train() ``` 这段代码片段展示了如何使用Hugging Face库加载预训练模型并对其进行微调的过程。虽然这里展示的例子并不完全对应于DPO的具体实现方式,但它提供了一个基础模板供进一步定制化开发之用[^3]。
评论 25
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值