• win7 + iis.WCF + 虚拟网卡


    在win7 + .net4.0 + VS2010的环境下开发的程序,基于wcf服务,与SQL 数据库交互。出于实情需要,要在没网络的环境下演示。

    实现思路:将数据库挪到本机,WCF服务发布到本地IIS,建立虚拟网络来连接本地iis,从而实现无网络环境的网络程序。

    电脑必备环境:iis + Sql Server + .net 4.0

    1. 发布到WCF服务IIS。注意,Web.Config里面的ConnectionString连接地址要指向本地,(不要IP)。

    <add name="TestConnectionString" connectionString="Data Source=localhost;Initial Catalog=Table1;Persist Security Info=True;User ID=xx;Password=xxxxxx" providerName="System.Data.SqlClient" />

    2. 客户端生成WCF连接。注意,此处也指向本地的Wcf,地址和IIS发布的地址一致。在执行之前,先在服务器查看该地址是否能够打开。不能打开则说明第一步不成功。

    public const string UriString = @"http://localhost/Test/WcfService.svc";
    
    public static Ref.WcfServiceClient GetService(string uri = UriString)
    {
        var url = new Uri(uri);
        var sc = new Ref.WcfServiceClient();
        sc.Endpoint.Address = new EndpointAddress(url);
        return sc;
    }

    3. 添加虚拟网卡。win7添加虚拟网卡步骤:“设备管理器”,计算机名称右键,"添加过时硬件",“安装我手动从列表选择的硬件”,“网络适配器”,“MicroSoft” + "MicroSoft Loopback Adapter",完成即可,这时在设备管理器的网络适配器下面可以看到,最后,进入网络连接,可以看到刚添加的连接,设置IP,注意与真实IP同段。

    我的系统是win7旗舰版,添加虚拟网卡完成时候,出现了“未识别的网络”。解决方法:

      1. 打开注册表,依次点开[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Class\{4D36E972-E325-11CE-BFC1-08002BE10318}]

      2. 逐个查看节点下的子节点,看右边的“DriverDesc”项,值为"Microsoft Loopback Adapter"时,停下来。

      3.在大节点下右键,"新建",“DWORD (32 -位)值”,数值名称:“*NdisDeviceType”,数值数据:“1”。

      4.确定之后,注销一下电脑再重新登入,重新启用网络连接中的虚拟连接,

      5.当看到“已启用”时,添加虚拟网卡步骤即完成。

    断开网络只保留虚拟连接。调试程序。

    当看到程序正常打开和运行时,心里那股油然而生的成就感,华丽丽地把我从头浇到尾。哇嘎嘎╮(╯▽╰)╭

  • 相关阅读:
    Redis的介绍及安装
    SQL查询语句执行的先后顺序
    C#集合:List、Queue、Stack和Set
    C#.Net如何手写ORM
    C#集合:字典
    C#集合:ICollection和IList接口
    C#集合:Array类
    Redis在C#中的应用:String和Hash
    C#线程:排它锁
    EF Core – 7.0 New Features
  • 原文地址:https://www.cnblogs.com/icyJ/p/3135959.html
Copyright © 2020-2023  润新知