c# 如何连接SOL
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了c# 如何连接SOL相关的知识,希望对你有一定的参考价值。
c# 如何连接SOL
用C#联接SQL有两种连接方式,字符串连接和配置文件连接。一个连接字符串的例子是对数据库文件NORTHWEND.MDF的连接
Data Source=.\\SQLEXPRESS; AttachDbFilename=C:\\...\\NORTHWND.MDF;
Integrated Security=True; Connect Timeout=30; User Instance=True
数据源的值是.\\SQLEXPRESS,这里“.”可以写成(local)或者localhost,表示是本机数据库。\\SQLEXPRESS表示数据库NORTHWEND.MDF是免费产品。由于数据库是文件形式,添加了AttachDbFilename说明。
另外的例子是对于安装在服务器的数据库,例如本机安装的数据库,使用SqlClient连接字符串。连接到AdventureWorks2008的连接字符串示例如下:
Data Source=.;Initial Catalog=AdventureWorks2008;Integrated Security=True
对于SQL Server身份验证,使用指定用户名和密码,这里星号表示有效用户名和密码。
"Persist Security Info=False;User ID=*****;Password=*****;"
+"Initial Catalog=AdventureWorks;Server=mysqlServer"
配置文件是可以按需要更改的XML文件。开发人员可以使用配置文件来更改设置,而不必重编译应用程序。
建议不要在代码中嵌入连接字符串。如果服务器的位置更改,应用程序将需要重新编译。此外,编译成应用程序源代码的未加密连接字符串可以使用MSIL反汇编程序(ildasm.exe)查看而泄密。为了避免将连接字符串存储在代码中,可以将代码存储在ASP.NET应用程序的web.config文件中以及Windows应用程序的app.config文件中。
使用配置文件可以避免记忆连接字符串细节的负担,记忆配置文件的设置过程比记忆连接字符串的细节要容易,因为设置过程按向导进行,智能提示有助于获取连接字符串。
具体做法给你推荐一本书:《C#编程指南》,但尧,清华大学出版社,2011年1月出版,相关内容有数据库的下载安装、可视化编程、ADO、SQL的FILESTREAM、以及O/R设计器(对象关系设计器)等。在Google或百度输入书名,作者,出版社,有好几家网上书店出售,最低75折,送到家。目前还未在书店上架。
参考技术A default.aspx.csusing System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.htmlControls;
using System.Data.SqlClient;
public partial class _Default : System.Web.UI.Page
protected void Page_Load(object sender, EventArgs e)
SqlConnection conn = dbconn.crtConn();//调用静态数据库连接类,并实例化
conn.Open();
SqlCommand cmd = new SqlCommand("select name from sort",conn); //建立command 命令 ,并实例化为cmd
try //试着读取数据库,如果没有错误,则执行下面错作
SqlDataReader rs = cmd.ExecuteReader();//从数据源中读取数据,并将数据返回到rs中
while (rs.Read()) //使用rs.read()输出rs中的数据内容
Response.Write(rs.GetString(0)+"<br>"); //数据内容
catch (Exception)//如果执行上面sql语句出错,则输出下面语句内容!
Response.Write("连接错误!");
参考技术B 先导包 using System.Data.SqlClient;
在创建connection对象
path = "Data Source=.;Initial Catalog=MyQQ;Integrated Security=True";
public static SqlConnection con = new SqlConnection(path);
就可以了本回答被提问者采纳
如何通过 Phantom 钱包集成使用 Vanilla JS 和 JSON-RPC 获取 Solana 帐户信息和/或 SOL 余额?
【中文标题】如何通过 Phantom 钱包集成使用 Vanilla JS 和 JSON-RPC 获取 Solana 帐户信息和/或 SOL 余额?【英文标题】:How to get Solana Account Info and-or SOL Balance using Vanilla JS and JSON-RPC via Phantom wallet integration? 【发布时间】:2021-12-05 03:23:02 【问题描述】:以下 Vanilla JS 示例通过 Phantom 钱包连接和断开 Solana 区块链。
连接成功,获取公共地址。
尝试使用 JSON-RPC 请求获取钱包余额和账户信息时失败。
如果有人可以帮助解决这个问题,我们将为我们这些喜欢尽可能保留原版的人提供一些基本示例。
连接功能:
// Connect Phantom
function phantom_connect()
// Check for Solana & Phantom
var provider = () =>
if ("solana" in window)
var provider = window.solana;
if (provider.isPhantom)
return provider;
else
return false;
window.open("https://phantom.app", "_blank");
;
var phantom = provider();
if (phantom !== false)
console.log("Phantom Wallet Found, Connecting..");
try
// Connect to Solana
var connect_wallet = phantom.connect();
// After Connecting
phantom.on("connect", () =>
// Check Connection
console.log("Phantom Connected: " + phantom.isConnected);
// Get Wallet Address
var wallet_address = phantom.publicKey.toString();
console.log("Solana Wallet Address: " + wallet_address);
// ********** THIS FAILS **********
// Get Account Info
var account = phantom.request(
"jsonrpc": "2.0",
"id": 1,
"method": "getAccountInfo",
"params": [wallet_address,
"encoding": "jsonParsed"
]
);
console.log("Solana Account Info:");
console.log(account);
// ********************************
// ********** THIS FAILS **********
// Get Wallet Balance
var balance = phantom.request(
"jsonrpc": "2.0",
"id": 1,
"method": "getBalance",
"params": [wallet_address]
);
console.log("Solana Wallet Balance:");
console.log(balance);
// ********************************
);
//
catch (err)
console.log("Connection Cancelled!");
断开功能:
// Disconnect Phantom
function phantom_disconnect()
window.solana.request(
method: "disconnect"
);
window.solana.on('disconnect', () =>
console.log("Phantom Disconnected!");
);
控制台在 getBalance 和 getAccountInfo 上均显示 -32603 错误。
RPC Error: JsonRpcEngine: Response has no error or result for request:
【问题讨论】:
【参考方案1】:它不使用 JSON-RPC API,但我在代码下方添加了 Devnet
上的 Solana (Phantom) 钱包余额。
provider = window.solana;
connection = new solanaWeb3.Connection(solanaWeb3.clusterApiUrl('devnet'), 'confirmed');
// After Connecting
connection.getBalance(provider.publicKey).then(function(value) console.log(value); )
【讨论】:
以上是关于c# 如何连接SOL的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 Phantom 钱包集成使用 Vanilla JS 和 JSON-RPC 获取 Solana 帐户信息和/或 SOL 余额?
在 Solana 程序部署失败后,如何恢复用于出租的 SOL?