c# - 使用 RandomNumberGenerator 的错误没有创建功能
问题描述
我尝试使用RandomNumberGenerator而不是 new Random 来生成加密随机数,但显示此错误 RandomNumberGenerator does not contain a definition for Create
using System.Security.Cryptography;
.
.
.
private int example()
{
int number = RandomNumberGenerator.Create();
.........
.........
return number;
}
解决方案
如果你去System.Security.Cryptography
上课,你会看到 Create() 方法返回RandomNumberGenerator
,所以你不能把它放在 int 变量中。
相反,请使用此语法。
private static RandomNumberGenerator rng = RandomNumberGenerator.Create();
private static int GenerateSomeStatic(int size)
{
var Some = new byte[size];
rng.GetBytes(Some);
int a = BitConverter.ToInt32(Some);
return a;
}
推荐阅读
- google-chrome-extension - 无缘无故拒绝谷歌扩展
- reactjs - 为什么用到达路由器重新渲染整个页面?
- python - 奇数开始时如何停止循环?
- php - php password_verify codeigniter3
- discord.py - 如何让我的 Bot 发送随机的预定义嵌入消息?
- git - Bitbucket:根据更改的代码有条件地添加默认审阅者?
- excel - Power Query 中的数据转换
- javascript - 无法部署 Firestore 云功能
- c# - WPF DataGrid 列标题鼠标事件
- javascript - 内置函数如何在 Javascript 或 NodeJs 中工作?