如何解决从 Oracle 数据库获取数据
我尝试使用 C#
和 Blazor
模板创建 PWA 客户端站点应用程序
管理与 Oracle
数据库的连接的类:
public class OracleInterface: IOracleInterface
{
readonly OracleConnection connect = new(Resources.connectionstring);
public interface IOracleInterface
{
Task<List<LoginRecord>> ReadCommandToOracle();
}
public async Task OpenConnection()
{
await connect.OpenAsync();
}
public async Task CloseConnection()
{
await connect.CloseAsync();
}
public async Task<List<LoginRecord>> ReadCommandToOracle()
{
List<LoginRecord> recordList = new List<LoginRecord>();
OracleCommand cmd = new OracleCommand();
cmd.Connection = connect;
cmd.CommandText = "select * from LOGIN_USER";
cmd.CommandType = CommandType.Text;
try
{
OracleDataReader dr = cmd.ExecuteReader();
while (await dr.ReadAsync())
{
var record = new LoginRecord();
record.NAME = dr["NAME"].ToString();
record.LASTNAME = dr["LASTNAME"].ToString();
record.SYstem_NO = dr["SYstem_NO"].ToString();
recordList.Add(record);
}
}
catch (Exception)
{
throw;
}
return recordList;
}
}
在 Program.cs 中,在 Main task 中添加:
builder.Services.AddSingleton<IOracleInterface,OracleInterface >();
和剃刀页面:
@page "/Buffer"
@using Hamster_PWA.DataAccess
@inject IOracleInterface DataAccess
@{getUsers();}
<h3>Buffer</h3>
<h1>error</h1>
@code {
protected override async Task OnInitializedAsync()
{
OracleInterface dataaccess = new OracleInterface();
await dataaccess.OpenConnection();
data = dataAccess.ReadCommandToOracle().Last();
}
LoginRecord data = new LoginRecord();
Microsoft.AspNetCore.Components.WebAssembly.Rendering.WebAssemblyRenderer[100] 未处理的异常呈现组件:无法加载字段类型 'Oracle.ManagedDataAccess.Client.OracleConnection:m_orclPermission' (9) 由于:无法从 typeref 解析带有标记 01000033 的类型 (程序集中的预期类“System.Data.Common.DBDataPermission” 'System.Data,版本=4.0.0.0,文化=中性, PublicKeyToken=b77a5c561934e089') 程序集:System.Data, 版本=4.0.0.0,文化=中性,PublicKeyToken=b77a5c561934e089 类型:System.Data.Common.DBDataPermission 成员:(null)
你能建议如何实现这个任务吗?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。