c#项目 订阅
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。 [1] 展开全文
C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。C语言是仅产生少量的机器语言以及不需要任何运行环境支持便能运行的高效率程序设计语言。尽管C语言提供了许多低级处理的功能,但仍然保持着跨平台的特性,以一个标准规格写出的C语言程序可在包括类似嵌入式处理器以及超级计算机等作业平台的许多计算机平台上进行编译。 [1]
信息
类    别
程序设计语言
影响语言
C++、C#、D、Java、JavaScript、ObjectPHP等
创始时间
1972年
主要编译器
Visual C++、Clang、GCC、Turbo C等
中文名
C语言
创始人
Dennis MacAlistair Ritchie
发    源
BCPL语言
外文名
C Programming Language
c语言简介
C语言是一门面向过程的计算机编程语言,与C++、Java等面向对象编程语言有所不同。C语言的设计目标是提供一种能以简易的方式编译、处理低级存储器、仅产生少量的机器码以及不需要任何运行环境支持便能运行的编程语言。C语言描述问题比汇编语言迅速、工作量小、可读性好、易于调试、修改和移植,而代码质量与汇编语言相当。C语言一般只比汇编语言代码生成的目标程序效率低10%~20%。因此,C语言可以编写系统软件。 [2]  当前阶段,在编程领域中,C语言的运用非常之多,它兼顾了高级语言和汇编语言的优点,相较于其它编程语言具有较大优势。计算机系统设计以及应用程序编写是C语言应用的两大领域。同时,C语言的普适较强,在许多计算机操作系统中都能够得到适用,且效率显著。 [3]  冯.诺依曼在1945年提出了现代计算机的若干思想,被后人称为冯.诺依曼思想,这是计算机发展史上的里程碑。自1945 年至今大多采用其结构,因此冯.诺依曼被称为计算机之父。他的体系结构计算机由运算器、控制器、存储器、输入设备、输出设备五大部件构成。 C语言拥有一套完整的理论体系经过了漫长的发展历史,在编程语言中具有举足轻重的地位。 [4] 
收起全文
精华内容
下载资源
问答
  • vscode运行c#项目

    千次阅读 2020-04-21 12:23:36
    vscode运行c#项目 安装环境 1、安装vscode,官网下载安装。 2、安装.net Core SDK,官网下载相应版本,默认安装路径,一路确定即可。 3、vscode商店下载c#插件。 运行程序 1、运行cmd到项目的cs文件夹中,输入...

    vscode运行c#项目

    安装环境

    1、安装vscode,官网下载安装。
    2、安装.net Core SDK,官网下载相应版本,默认安装路径,一路确定即可。
    3、vscode商店下载c#插件。
    插件样例

    运行程序

    1、运行cmd到项目的cs文件夹中,输入dotnet run即可,也可以用vscode中run或者F5运行。
    2、按照提示,选择环境运行,点击: .NET Core。
    3、跳出一个json文件让你设置?跳出一个警告:
       译:缺少必需的资产构建和调试的c# vscode测试”。加入他们吗?
       点击:yes,然后关掉文件就好了。
    4、再次运行便可执行项目。

    展开全文
  • 【C#】从头开始看一个C#项目

    万次阅读 2018-06-13 08:47:40
    由于软件需要用C#进行二次开发,看了一段时间的语法之后,开始接触官网提供demo工程文件,将从头开始读一个C#项目所遇到的一些知识点记录下来。 C#项目的入口 一般C#项目中会有一个program.cs文件,可以称为主程序...

    由于软件需要用C#进行二次开发,看了一段时间的语法之后,开始接触官网提供demo工程文件,将从头开始读一个C#项目所遇到的一些知识点记录下来。

    C#项目的入口

    一般C#项目中会有一个program.cs文件,可以称为主程序,Main方法为主程序中的入口点,通常是如下模板:

    static class Program
        {
            /// <summary>
            /// The main entry point for the application.
            /// </summary>
            [STAThread]    //WR 单线程,为应用程序分配主线程,Main方法是主线程的入口点
            static void Main()
            {
                Application.EnableVisualStyles();      //WR 启用应用程序可视样式
                Application.SetCompatibleTextRenderingDefault( false );   //WR 控件使用GDI+
                Application.Run( new samlight_client_csharp() );  //WR 设置当前项目主窗体
            }
        }

    public partial class

    `partial` 是部分类/局部类,在另一个`.cs`文件中可以再定义这个类名。
    

    控件的name属性

    应该修改成有意义的名字,不要使用默认的Form1Label1等。
    这里写图片描述
    对应的初始化代码为:

    this.BUTTON_CONNECT_ETHERNET = new System.Windows.Forms.Button();

    InitializeComponent()方法

    建一个C#窗体项目,在Form1.csForm1.Designer.cs里分别有一个InitializeComponent()函数。

    Form1.Designer.cs里的是定义 (函数名后面有大括号包含定义内容);
    Form1.cs 里的是调用 (函数名后面分号结尾)。

    partial表示以下创建的是分布类代码,也就是说 一个类的定义代码 可以写在两个不同的页面,
    Form1.csForm1.Designer.cs

    调用子窗口

    目的:在主窗口中通过点击一个按钮,打开子窗口。子窗口打开之后仍然能够操作主窗口。

    private void BUTTON_TEXT_Click( object sender, EventArgs e )
            {
                //WR 确保打开的text_frm子窗口数量为1
               if( Application.OpenForms.OfType<text_frm>().Count() == 0)
                {
                    text_frm text_form = new text_frm(ClientCtrl1);
                    text_form.Show();
                }           
            }

    Application.OpenForms属性,包含属于此应用程序的所有当前打开窗体的FormCollection,表示所有由应用程序窗体组成的只读集合。属于System.Windows.Forms命名空间。

    FormCollection的扩展方法OfType<TResult>(),可以根据指定类型筛选IEnumerable的元素。FormCollection 通过使用 Application 对象列表中整个当前打开的窗体的OpenForms 属性。属于System.Collections命名空间。

    Enumerable.Count()返回序列中的元素数,返回值为int32型,属于System.Linq命名空间。

    调用ActiveX控件

    方法:打开一个窗体设计器(designer),在工具箱中右键“选择项”,弹出的对话框中选择“添加COM组件”,添加需要的ocx控件,然后将其拖入设计器中。在解决方案视图的“引用”选项卡下会自动添加AxSAMLIGHT_CLIENT_CTRL_OCLib, 在Form1.Designer.cs中的InitializeComponent()方法中会添加一行
    private AxSAMLIGHT_CLIENT_CTRL_OCXLib.AxScSamlightClientCtrl axScSamlightClientCtrl1;

    • Interop.xxx.dll是自动化(COM dll)包装器,可以在命名空间中操作对象;
    • AxInterop.xxx.dll是ActivateX控件的控件包装器,可以将它拖到窗体上。

    COM组件:
    COM组件是以WIN32动态链接库(DLL)或可执行文件(EXE)形式发布的可执行代码组成。
    COM组件必须隐藏(封装)其内部实现细节。
    COM组件不是DLL,只是利用DLL来给组件提供动态链接的能力。
    COM组件不是一个API函数集。
    COM组件不是类。

    可以把COM看作是某种(软件)打包技术,即把它看作是软件的不同部分,按照一定的面向对象的形式,组合成可以交互的过程和一组支持库。ActiveX是指宽松定义的、基于COM的技术集合。

    COM和一般DLL的区别
    1、COM组件以接口对功能分类,便于组织;DLL特别是大的DLL,函数一大堆,难以组织;
    2、COM组件便于升级维护,功能扩充,只需添加接口就行;DLL升级困难,函数不能随意改变;
    3、COM创建调用有很好的安全性,DLL没有;
    4、COM组件可轻松实现进程间调用,DLL很困难;
    5、COM组件可轻松实现分布式调用,DLL不可能;
    6、COM组件具有封装、继承、多态的面向对象特征,DLL只有封装;

    展开全文
  • C#项目源码大集合系列一

    热门讨论 2016-04-07 23:13:42
    资源太大,分系列,其他系列详见我的资料 源码01 销售管理系统 源码02 彩票分析系统 源码03 餐饮管理系统 源码04 C#点名程序 源码05 象棋游戏 源码06 变色球游戏 源码07 多功能计算器 ...深入体验C#项目开发
  • C#项目连接MySQL数据库

    千次阅读 2019-03-27 17:37:33
    C#项目连接MySQL数据库 这里我是将方法全部都放在一个新建的MySQL类中了。也可以单独实现方法。 这里只提供了简单的增删改查。 这里是用C#的控制台应用程序做示范。也可以在Web Form或者Win Form等C#项目中通过这个...

    C#项目连接MySQL数据库

    2020-9-1 09:07:44
    在CSDN上图片显示有点问题,这是我在 语雀 上写的原版笔记:
    https://www.yuque.com/yyymarshal/yyymarshal/vwqcrb

    • 这里我是将方法全部都放在一个新建的MySQL类中了。也可以单独实现方法。
    • 这里只提供了简单的增删改查。
    • 这里是用C#的控制台应用程序做示范。也可以在Web Form或者Win Form等C#项目中通过这个方法实现连接并操作MySQL数据库。
    • 在进行操作前,请确保MySQL和Visual Studio已经安装完成,并且MySQL的服务已经打开。
    • 数据库名字和表名:
      image.png

    1.新建C#控制台项目,添加MySQL的引用,新建MySQL类。

    image.png

    image.png


    C:\Program Files (x86)\MySQL\Connector.NET 6.9\Assemblies\v4.5
    image.png


    image.png

    2.编写MySQL类的代码。

    image.png

    image.png

    image.png

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    using MySql.Data.MySqlClient;
    using System.Data;
    
    namespace _001_MySQL的连接
    {
        class MySQL
        {
            string connStr;
            MySqlConnection conn;
            string cmdText;
            MySqlCommand cmd;
    
            public MySQL(string dataBaseName)
            {
                connStr = string.Format(
                    "Database={0};DataSource=127.0.0.1;User=root;Pwd=root;port=3306",
                    dataBaseName
                    );
                conn = new MySqlConnection(connStr);
            }
            /// <summary>
            /// 通过DataAdapter类和DataSet类来实现查询一个表的数据。
            /// 需要输入的形参是:想要查询的表名
            /// </summary>
            /// <param name="tableName"></param>
            public void Select(string tableName)
            {
                conn.Open();
    
                cmdText = string.Format(
                    "SELECT * FROM {0}", tableName
                    );
                cmd = new MySqlCommand(cmdText, conn);
    
                MySqlDataAdapter dad = new MySqlDataAdapter(cmd);
                DataSet dset = new DataSet();
                dad.Fill(dset, tableName);
                for (int i = 0; i < dset.Tables[0].Rows.Count; i++)
                {
                    for (int j = 0; j < dset.Tables[0].Columns.Count; j++)
                    {
                        if (j == dset.Tables[0].Columns.Count - 1)
                            Console.Write(dset.Tables[0].Rows[i][j].ToString());
                        else
                            Console.Write(dset.Tables[0].Rows[i][j].ToString() + ":");
                    }
                    Console.WriteLine();
                }
    
                conn.Close();
            }
            /// <summary>
            /// 通过DataReader类来实现查询一个表的数据。
            /// 需要输入的形参是:想要查询的表名,不固定个数的列名。
            /// </summary>
            /// <param name="tableName"></param>
            /// <param name="columnsName"></param>
            public void Select(string tableName, params string[] columnsName)
            {
                conn.Open();
    
                cmdText = string.Format(
                    "SELECT * FROM {0}", tableName
                    );
                cmd = new MySqlCommand(cmdText, conn);
    
                MySqlDataReader dataReader = cmd.ExecuteReader();
                while (dataReader.Read())
                {
                    Console.WriteLine(
                        dataReader.GetString(columnsName[0])
                        + ":" +
                        dataReader.GetString(columnsName[1])
                        );
                }
                dataReader.Close();
    
                conn.Close();
            }
            /// <summary>
            /// 输入表名、ID列和Name列的名称来插入一条数据。
            /// </summary>
            /// <param name="tableName"></param>
            /// <param name="id"></param>
            /// <param name="name"></param>
            public void Insert(string tableName, int id, string name)
            {
                conn.Open();
    
                cmdText = string.Format(
                    "INSERT INTO {0} VALUES({1},'{2}')",
                    tableName, id, name
                    );
                cmd = new MySqlCommand(cmdText, conn);
                cmd.ExecuteNonQuery();
    
                conn.Close();
    
            }
            /// <summary>
            /// 通过ID来删除表中的一条数据
            /// </summary>
            /// <param name="tableName"></param>
            /// <param name="id"></param>
            public void Delete(string tableName, int id)
            {
                conn.Open();
    
                cmdText = string.Format(
                    "DELETE FROM {0} WHERE ID={1}",
                    tableName, id
                    );
                cmd = new MySqlCommand(cmdText, conn);
                cmd.ExecuteNonQuery();
    
                conn.Close();
            }
            /// <summary>
            /// 通过ID来修改表中的一条数据的Name值
            /// </summary>
            /// <param name="tableName"></param>
            /// <param name="id"></param>
            /// <param name="name"></param>
            public void Update(string tableName, int id, string name)
            {
                conn.Open();
                
                cmdText = string.Format(
                    "UPDATE {0} SET NAME='{1}' WHERE ID={2}",
                    tableName, name, id
                    );
                cmd = new MySqlCommand(cmdText, conn);            
                cmd.ExecuteNonQuery();
    
                conn.Close();
            }
            /// <summary>
            /// @ 和 cmd.Parameters.AddWithValue("string","str");。
            /// 这种方法不能用AddWithValue方法来添加表的名字,会报错,
            /// 只能添加列的属性的值。
            /// 因为通过这种方法来添加表名的时候,
            /// 它会这样添加表名的信息:UPDATE 'TABLENAME' SET ...。
            /// 多了一对单引号,所以会报错。
            /// </summary>
            /// <param name="id"></param>
            /// <param name="name"></param>
            public void UpdateByParameters(int id, string name)
            {
                conn.Open();
    
                cmdText = 
                    "UPDATE TEST_CONNECTION SET NAME=@INPUT_NAME WHERE ID=@INPUT_ID";
                cmd = new MySqlCommand(cmdText, conn);
                //cmd.Parameters.AddWithValue("TABLENAME", tableName);
                cmd.Parameters.AddWithValue("INPUT_NAME", name);
                cmd.Parameters.AddWithValue("INPUT_ID", id);
                cmd.ExecuteNonQuery();
    
                conn.Close();
            }
        }
    }
    
    

    3.编写主函数的测试代码。

    image.png

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;
    
    namespace _001_MySQL的连接
    {
        class Program
        {
            static void Main(string[] args)
            {
                MySQL mySql = new MySQL("yyymarshal");
    
                Console.WriteLine("Select()方法:");
                mySql.Select("test_connection");
    
                Console.WriteLine("\nInsert()方法:\n插入id=5,name=Test的一条数据");
                mySql.Insert("test_connection", 5, "Test");
                Console.WriteLine("---------------");
                Console.WriteLine("Select()方法:");
                mySql.Select("test_connection", "id", "name");
    
                Console.WriteLine("\nUpdate()方法:\n将id=5的数据的name修改为PPP");
                mySql.Update("test_connection", 5, "PPP");
                Console.WriteLine("---------------");
                Console.WriteLine("Select()方法:");
                mySql.Select("test_connection");
    
                Console.WriteLine("\nUpdateByParameters()方法:\n将id=5的数据的name修改为OOO");
                mySql.UpdateByParameters(5, "OOO");
                Console.WriteLine("---------------");
                Console.WriteLine("Select()方法:");
                mySql.Select("test_connection");
    
                Console.WriteLine("\nDelete()方法:\n删除id=5的数据");
                mySql.Delete("test_connection", 5);
                Console.WriteLine("---------------");
                Console.WriteLine("Select()方法:");
                mySql.Select("test_connection");
    
                Console.ReadKey();
            }
        }
    }
    
    

    4.运行测试

    运行前的数据表的数据:
    image.png

    运行结果:
    image.png

    展开全文
  • 深入体验C#项目开发(全部源代码及其附送源代码)

    千次下载 热门讨论 2014-04-30 09:13:53
    今天下载了一个哥们的深入体验C#项目开发全部源代码及其附送源代码下载了20次,才全部下载完毕。感觉着这哥们,分享精神可嘉,就是下载的时候有点麻烦。所以我借花献佛把全部源代码打包上传了。
  • 最佳实践:C#项目转C++项目

    千次阅读 2018-12-25 14:53:59
    最近在把一个C#项目转到C++项目,下面整理下C#和C++不同的地方,给各位个参考,避免入坑: 1)默认对象赋值方式不同,所以修改时要多加注意。具体参考 https://bbs.csdn.net/topics/392440547 2)类的变量默认值...

    最近在把一个C#项目转到C++项目,下面整理下C#和C++不同的地方,给各位个参考,避免入坑:

    1)默认对象赋值方式不同,所以修改时要多加注意。具体参考 https://bbs.csdn.net/topics/392440547

    2)类的变量默认值不同 .net默认是类型的默认值,C++没有默认值的。要避免C++的类成员没有默认值的意外行为。

    3)a[i][j]和a[i,j]是不相同的。

    4)VS2013 C++程序的默认堆栈大小为1MB,太小,有时候会堆栈溢出,可以参考 https://blog.csdn.net/feeltouch/article/details/9400095

    5)std::remove不能从vector中移除元素,需要配合erase使用。

    6)VS2013C++工程调试时看不到局部变量的值:设置问题项目右键属性打开后--Configuration Properties --->c/c++ ---->  Optimization下面选择第一项选Disabled(/od)

    7)C++浮点数在计算过程中保留有效数字,可以使用如下代码,但是耗时较多

    double round(double number, unsigned int bits) {
        stringstream ss;
        ss << fixed << setprecision(bits) << number;
        ss >> number;
        return number;
    }

    8)C#项目怎么来调用C++的动态库:

    这里的result是C++动态库传出的参数,在C#里面用StringBuilder来接受,在C#里面调用GetProvincePrice时,提前给StringBuilder申请好空间。

    bool GetProvincePrice(char * param_string, char * result);
    [DllImport("CPlusPlus.dll", EntryPoint = "GetProvincePrice", CallingConvention = CallingConvention.Cdecl, CharSet = CharSet.Ansi)]
            public extern static bool GetProvincePrice(string exlist, StringBuilder result);

     

    展开全文
  • C#项目中操作Excel文件——使用NPOI库

    万次阅读 多人点赞 2016-08-29 20:23:18
    实际C#项目中经常会涉及到需要对本地Excel文件进行操作,特别是一些包含数据记录、分析、汇总功能模块的项目。常用的操作Excel文件的方法主要有三个:   1. OleDb: 这种方式是把整个Excel文件当做一个数据源来...
  • c#项目如何发布到服务器

    千次阅读 2020-03-31 17:51:14
    前言:此项目是C#项目采用服务端和客户端分离的MVVM的模式,现在需要把项目发布到服务器上以供访问 1.服务端 需要把服务端的数据库资源名称换成你服务器上数据库中的名称或者IP,然后重新生成解决方案,启动服务器,...
  • C#项目A中需要引用项目B。 实现 将项目B手动复制到A所在的项目目录下的同一个解决方案中,即与项目A同级的目录下。 在VS中打开项目B,打开解决方案资源管理器--右击解决方案--添加--现有项目 然后找到...
  • C# VSCode创建C#项目

    万次阅读 2018-07-13 10:09:31
    1、下载VSCode 2、下载NETCore环境3、安装C#扩展选项4、打开VScode终端 cd到你的目录文件夹(可以新建一个目录文件)PS C:\Users\Administrator\Desktop\VS&gt; cd demo PS C:\Users\Administrator\Desktop\VS...
  • C#项目启动调试时没有重新生成项目

    千次阅读 2014-08-18 14:59:32
    C#项目启动调试时没有重新生成项目
  • c#项目发布在服务器上

    千次阅读 2019-01-17 14:38:29
    c#项目发布在服务器上1.通过vs软件将项目发布在指定文件夹下2.将文件夹拷贝到服务器任意盘下3.找到服务器上的IIS管理器(以下是如何添加网站步骤) 1.通过vs软件将项目发布在指定文件夹下 2.将文件夹拷贝到服务器...
  • C#项目开发案例全程实录(第2版).pdf

    千次下载 热门讨论 2013-07-18 21:42:35
    C#项目开发案例全程实录(第2版).pdf
  • 20个C#项目实战开发及项目全部源码

    热门讨论 2018-08-08 09:33:32
    最近开始学C#,以前学C#的朋友給我丢过来这个文件,感觉很不错的优质代码,分享给大家看看
  • c#项目总结

    2018-09-27 01:11:35
    所以打算写一些总结性的文章,先写几个项目,用于c#各个方向的封装使用 最后汇总成一个完善的解决方案。所有项目都在一个解决方案FastAIFrame 现在第一个很简单的项目log,封装log4net.解决日志写的问题。 项目git...
  • Visual Studio 2010 打包C#项目程序

    千次阅读 2016-07-07 17:09:40
    Visual Studio 2010 打包C#项目程序
  • 实战突击 C# 项目开发案例整合 源代码 明日科技

    千次下载 热门讨论 2011-11-15 12:44:36
    说明:《实战突击 C# 项目开发案例整合》 随书源代码 人民邮电出版社 明日科技出版
  • c#项目大全

    千次阅读 2017-06-11 13:41:22
    C#开源项目大全 商业协作和项目管理平台-TeamLab 网络视频会议软件-VMukti 驰骋工作流程引擎-ccflow 【免费】正则表达式测试工具-Regex-Tester Windows-Phone-7-SDK Excel-...
  • C# 项目打开后引用下面都是黄色感叹号 C# 项目打开后引用下面都是黄色感叹号或者System.Web.Mvc引用后ActionResult无法转到视图 很简单你引用的packages删除掉重新生成下,就Ok ...
  • Visual Studio 2010--C#跟西门子1200通讯(Sharp7)②--C#项目框架 上期回顾(上期主要对PLC的IP,访问使能,数据库的配置等进行了设置): 本期将在Microsoft Visual Studio 2010中,对PLC通讯进行代码编写,...
  • 条件编译符号指的是 Conditional Compilation Symbols。你可以在 Visual Studio 的项目属性中设置,也可以直接在项目文件中写入 DefineConstants 属性。...理解 C# 项目 csproj 文件格式的本质和编译流...
  • 如题 c#项目中 添加一个自动缩略图片 请教代码如何实现 请教代码如何实现
  • C#项目目录结构

    万次阅读 2018-02-24 17:26:56
    项目类型:C# Windows窗体应用程序 windows下是以一个文件夹表示一个项目 *.sln:(Visual Studio Solution) 通过为环境提供对项目项目项和解决方案项在磁盘上位置的引用,可将它们组织到解决方案中。比如...
  • C#项目的生成事件及批处理文件

    千次阅读 2015-02-05 22:07:35
    一个C#项目,如果为同一个解决方案的其他项目所引用,则其编译后,会将DLL拷贝到引用项目中;但如果它并不被其他项目引用,但又想编译后能够自动将生成的东西拷贝过去,可以在项目的生成事件中,写上一些批处理命令...
  • C#项目获取安装目标机C盘权限 自己写的C#项目(有在目标机上写文件操作)如果要在目标机上顺利执行,则需要取得相应权限(安装在C盘的时候必做,其他盘不需要)才能顺利执行。如何获得呢? 用Visual Studio就能很...
  • 笔者录了两个视频,打开项目源码地址,可以先看看视频了解项目界面。 学生选课管理系统 项目介绍 这是一个学生选课信息管理系统,使用VS2010+SQL2008编写。 在 VS2017+SQL2014打开、运行正常。 有...
  • C#项目中如何读取并修改App.config文件 时间:2014-10-01 本文简单介绍C#项目中读取并修改App.config文件的方法,AppConfig最重要的功能就是它将命令行选项和配置文件选项统一到一种数据结构中。 ...
  • VS下 C#项目使用SVN版本号

    千次阅读 2016-09-10 13:13:58
    为了实现C#项目中的SVN版本控制,我找了许多资料,然后在实际使用中又简化了下,只需要一份模板文件以及VS项目中生成前后事件的一些设置即可。 在C#项目中,记录程序版本的是AssemblyInfo.cs文件。版本参数为:...
  • protobuf在C#项目中的使用

    千次阅读 2015-08-13 11:00:58
    protobuf在C#项目中的使用 在C#项目中,有时候会使用到使用到protobuf来作为通信时数据交换的格式。 protobuf(ProtocolBuffer,简称PB),是google 的一种数据交换的格式。这是一种二进制的格式,比使用xml更...
  • c#项目结构

    千次阅读 2019-03-05 15:46:31
    在建立好dbhelper和program两个类之后,对主页面进行编程 每个题目/任务,建立一个页面:Employee,SQLSearch,SQLStatic; 每个页面,new一个实例,这样主界面和每个操作界面就连接起来了 ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 76,972
精华内容 30,788
关键字:

c#项目

c# 订阅