C# VS2013 使用 NetMQ 和python 通信记录

需求:c#实现 web端,linux实现服务端,如何实现他们之间的通信,异步传输、接受图片。

备用方法:使用mySql数据库,数据库部署在S端。Web端远程访问数据库,写入图片如表,返回记录ID,传给S。S根据ID读取图片,处理图片到另一表,反馈Web端ID,Web端依据ID读取处理后的图片然后显示。

1、填坑记录:

1)vs2013 NuGet安装坑

扩展更新搜索“NuGet”一直显示下载状态,后来用360浏览器打开“详细信息”进入网址:NuGet Package Manager for Visual Studio 2013 - Visual Studio Marketplace,点击 下载 竟然打不开,郁闷ing。why ?  后来发现是屏蔽了,用 谷歌浏览器可以打开,汗。

下载到本地:NuGet.Tools.vsix 然后 右键点击安装即可。

2)项目安装  NetMQ

直接搜索“NetMQ” 安装。这次终于可以了。

3)错误提示:编译器错误消息: CS0012: 类型“System.Object”在未被引用的程序集中定义。必须添加对程序集“System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a”的引用。

解决方法:

//项目生成的bin文件夹下并没有生成 System.Runtime.dll;

在web.config中添加如下配置即可:

  <system.web>
    <compilation debug="true" targetFramework="4.5.1">
      <assemblies>
        <add assembly="System.Runtime, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
      </assemblies>
    </compilation>
  </system.web>

4)使用Asp.Net Global.asax 文件;把代码写到.cs文件

参考博文:使用Asp.Net Global.asax 文件;把代码写到.cs文件

//首先在App_Code文件夹下创建一个类Global.cs把所有Global.asax文件里面的方法都复制过去。类使用partial修饰符并且要继承System.Web.HttpApplication
写法如下:

/// <summary>
/// Global 的摘要说明
/// </summary>
public partial class Global : System.Web.HttpApplication
{
    public Global()
    {
        //
        // TODO: 在此处添加构造函数逻辑
        //
    }
    void Application_Start(object sender, EventArgs e)
    {
        // 在应用程序启动时运行的代码
    }
    void Application_End(object sender, EventArgs e)
    {
        // 在应用程序关闭时运行的代码
    }
    void Application_Error(object sender, EventArgs e)
    {
        // 在出现未处理的错误时运行的代码
    }
    void Session_Start(object sender, EventArgs e)
    {
        // 在新会话启动时运行的代码
    }
    void Session_End(object sender, EventArgs e)
    {
        // 在会话结束时运行的代码。
        // 注意: 只有在 Web.config 文件中的 sessionstate 模式设置为
        // InProc 时,才会引发 Session_End 事件。如果会话模式设置为 StateServer
        // 或 SQLServer,则不会引发该事件。
    }
}

然后再修改一下Global.asax文件里面只要写上

<%@ Application Language="C#" Inherits="Global" %>

把内容指向刚才写的Global.cs文件就可以了。现在在全局变量里面想写什么就写什么吧。

5)  多线程解决 Application_Start 开启侦听死循环问题

参考博文:

a)C#多线程 - .NET开发菜鸟 - 博客园

b)C#多线程编程

6)有一个 好像是无法开启另一请求的错误

昨天调的时候有,今天竟然申请的没了。在我第二次点击“开始传输”时报错,现在竟然没了,会不会是个坑。别等部署的时候再蹦出来。

7) App_Code 中定义一个 枚举,一个图片节点类,一个图片节点链表类,写到一个文件中不行,分开写可以正确识别,why ?

8)ASP.NET中局部刷新的实现

参考博文:ASP.NET中局部刷新的实现

ctrl+a 全选要对齐的代码
ctrl+k,ctrl+f 格式化

9)复习下session

ASP.NET状态管理之八(会话Session)

10)解决VS2013 NuGet程序包 一直显示加载中,无法显示问题

参考博文:解决VS2013 NuGet程序包 一直显示加载中,无法显示问题

最近用vs2013安装程序包,忽然发现用不了,显示一直是加载中,但是vs2017可以。同样的源。尝试更改程序包源,还是不行。

后来发现问题nuget官方网站已经不支持http访问, 只支持https,但是vs2013访问https默认使用的协议为Tls1.1,但是nuget官方网站只支持Tls1.2。要解决这个问题,那就需要让vs2013以Tls1.3访问Nuget的官网,具体解决办法为在程序包管理控制台运行如下命令

[Net.ServicePointManager]::SecurityProtocol=[Net.ServicePointManager]::SecurityProtocol-bOR [Net.SecurityProtocolType]::Tls12

11) 解决 连接mysql 提示 给定关键字不在字典中  刷新就好了

原来在本地好好的,放到服务器上就不行,后来发现是本地的mysql版本和服务器版本不同,把服务器上的引用 Mysql.Data.dll 换成他上面安装的对应版本就行。

12)详解ASP.NET提取多层嵌套json数据的方法

参考博文:详解ASP.NET提取多层嵌套json数据的方法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值