C#常见问题总结(三)

11、sql比access好在哪里,为什么都用sql

解决方法:

数据量大,可以在服务器端,access一般在单机的时候用

12、c#基础视频教程有吗

解决方法:

零基础学C#这本书带全套C#基础视频,地址:

https://item.m.jd.com/product/12271986.html?utm_source=androidapp&utm_medium=appshare&utm_campaign=t_335139774&utm_term=QQfriends

13、我的复选列表框 找不到 SelectedIndexChanged事件 ??

解决方法:

在事件列表里双击触发

14、用户控件和窗体的区别是什么啊

解决方法:

用户控件就是用户自己通过继承Control自定义的控件,本质上跟控件一样

15、怎么接受数据的时候吧时间转换成字符串

 

解决方法:

使用ToString()方法,如果转换日期,使用Convert.ToDateTime

16、面试的时候,如果别人要看作品,怎么展示给别人看?是带个u盘,还是打印纸质的说明书?或者有什么更好的方案吗?

解决方法:

拿笔记本,直接看作品

17、虚方法  重写   和 new 对普通方法的重写,有什么区别?

解决方法:

重写虚方法,子类里面只有一个方法,用new,子类里面有两个同名方法,相当于重载方法

18、请问如何将子窗体固定在父窗体右下角?

解决方法:

把窗体的FormBorderStyle属性设置为None,就不能拖动了,从窗体右下角显示可以参考《C#开发实战1200例(第I卷)》这本书中第9章的206例子

19、asp.net网页,地址栏不会编码

解决方法:

//加密要传递的参数

string Id = Convert.ToBase64String(System.Text.Encoding.Default.GetBytes("你好")).Replace("+", "%2B");           Response.Redirect("WebForm2.aspx?id=" + Id);

//解密

string Id =

System.Text.Encoding.Default.GetString(Convert.FromBase64String(Request.QueryString["id"].ToString().Replace("%2B", "+")));

 

20、利用timer组件自动刷新窗体

解决方法

设置一个时间间隔,然后在Tick事件里面执行指定的方法。

21、怎么实现像messagebox那样的阻塞窗体?

解决方法

ShowDialog方法

22、这个 summary 这里起到什么作用啊?

 

解决方法

<summary> 标记是一种注释,用于描述类型或类型成员,这种注释主要有两种作用:

1、这些注释能够生成一个XML文件,这样呢看起来会对程序的内容一目了然。

2、以这种方式对你的类,属性,方法等等加上注释之后,当你在其他地方使用以这种方式加上的类,属性,方法等等时,黄色的提示框里面会把你写的注释显示出来,使你更加明白要使用的对象的作用。

23、vs2017里的c#项目怎么打包 打包怎么指定安装之后桌面应用的图标

解决方法

参考这篇文章https://www.cnblogs.com/yinsq/p/5254893.html

24、int money = Convert.ToInt32(Console.ReadLine());  和 int money = int.parse (Console.ReadLine());  有什么区别呢

解决方法

这两个都是转换为int类型,但如果参数不是数字类型的话,Convert.ToInt32会返回0,不产生任何异常,int.Parse会产生异常。

25、SQL Server中的Windows身份验证和混合身份验证有什么区别

解决方法

Windows身份验证相对于混合模式更加安全,使用本连接模式时候,sql不判断sa密码,而仅根据用户的Windows权限来进行身份验证,称为“信任连接”,但是在远程连接的时候,会因NTML验证的缘故,无法登陆。

混合模式验证是:当本地用户访问sql时,采用windows身份验证建立信任连接;当远程用户访问时,由于未通过windows认证,而进行sql server认证(使用sa的用户也可以登录sql),建立“非信任连接”,从而使得远程用户也可以登录。

26、SQL中如何批量生成随机字符串

解决方法

/*----------------------------------批量生成随机的字符串----------------------------------*/

--如果在已知数据库中存在GetRandStr这个存储过程,则删除(为了方便反复执行这段代码)

if exists(select * from sys.objects where name='GetRandStr' and type='P')

drop proc GetRandStr

go

--随机字符串存储过程

create proc GetRandStr

-- @count是随机字符串个数,@no则是最终生成的随机字符串

(@count int,@no varchar(1000) output)

as

begin

--@randomstr是每次随机的字符累加的值

declare @randomstr varchar(1000)

--@charpool是产生随机字符的字符序列

declare @charpool varchar(1000)

-- @i是循环次数

declare @i int

--@counter 是产生随机字符的位置

declare @counter integer

--设置随机序列

set @charpool='12345678910AaBbCcDdEeFfGgHhIiJjKkLlMmNnOoPpQqRrSsTtUuVvWwXxYyZz'

--循环初始值

set @i=1

-- 随机字符串初始值

set @randomstr=''

--循环

while @i<@count

begin

here:

--产生随机字符位置 (0-62的整数)

set @counter=CAST(RAND()*100/1.6 as integer)

-- 如果@counter = 0 就重新生成随机数

if @counter<1 goto here

set @randomstr=@randomstr+SUBSTRING(@charpool,@counter,1)

--循环递增

set @i=@i+1

end

--最后将生成的六个随机字符加上两个固定字符'KY',组成所需的随机字符串

set @no='QQ'+LEFT(@randomstr,ISNULL(@count,180))

return

end

go

--调用:比如要生成10个随机字符串

declare @p int

set @p=1

while @p<=10

begin

declare @substring varchar(8000)

-- 调用存储过程

exec GetRandStr 8,@substring output

-- 输出随机字符串

print @substring

set @p=@p+1

end

27、C#如何连接oracle数据库

解决方法

string OrlCon = "User ID=IFSAPP;Password=IFSAPP;Data Source=RACE;";

OracleConnection ocon = new OracleConnection(OrlCon);

ocon.Open();

 

posted @ 2018-02-08 15:50  明日学院  阅读(333)  评论(0编辑  收藏  举报