.NET 幫助

C# Devart.Data.Oracle(開發人員如何使用)

發佈 2024年4月29日
分享:

歡迎來到我們的完整解決方案整合教學 C# Devart.Data.Oracle 使用 IronPDF 來創建綜合應用程序,專注於基於 Oracle 數據庫的應用程序。本教程介紹了一個針對初學者的指南,旨在幫助他們在 .NET Framework.NET Core 項目中利用 Oracle 數據庫的強大功能。Devart.Data.Oracle 是一個強大的數據提供程序,它可以直接訪問 Oracle 數據庫。

C# Devart.Data.Oracle 是一個簡化 Oracle 數據庫操作的庫。它適用於需要與 Oracle 數據庫互動的開發人員。這個庫提供了先進的功能,它簡化了數據庫連接,增強了數據操作,這使得它成為 C# 開發人員的寶貴工具。

IronPDF 是一個不同的工具。它允許C#開發人員創建、編輯和讀取PDF文件。它可以輕鬆地與.NET應用程序集成。IronPDF幫助 從 HTML 生成 PDF. 它提供了一種以程式方式處理 PDF 檔案的方法。

這兩個工具具有不同的用途。C# Devart.Data.Oracle 專注於 Oracle 資料庫互動。IronPDF 專注於 PDF 檔案操作。它們共同增強了 C# 開發人員的能力。它們解決了軟體開發中的兩個不同需求。本文將主要關注於 C# Devart.Data.Oracle。

開始使用C# Devart.Data.Oracle

設置 C# Devart.Data.Oracle 在 .NET 專案中

要開始使用著名的 Oracle 資料庫提供者 C# Devart.Data.Oracle,首先需要通過 Visual Studio 的解決方案總管將其添加到您的 .NET Core 專案中。這個過程很簡單。轉到 NuGet 套件管理器。搜尋 "Devart.Data.Oracle"。安裝該套件以利用 DotConnect for Oracle 和 Dataset 工具。這個操作會將該庫添加到您的專案中。現在您可以開始使用它的功能。

C# Devart.Data.Oracle(開發人員如何使用): 圖 1 - 透過 Visual Studio 的 NuGet 套件管理器搜尋 Devart.Data.Oracle

一個基本的代碼範例

讓我們看一個簡單的範例。這將展示如何連接到Oracle資料庫。我們將執行一個查詢。這裡是一個基本的範例:

using Devart.Data.Oracle;
class Program
{
    static void Main()
    {
        var connectionString = "User Id=myUsername;Password=myPassword;Server=myServer;";
        using (var connection = new OracleConnection(connectionString))
        {
            connection.Open();
            using (var command = new OracleCommand("SELECT * FROM myTable", connection))
            {
                using (OracleDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Console.WriteLine(reader ["myColumn"].ToString());
                    }
                }
            }
        }
    }
}
using Devart.Data.Oracle;
class Program
{
    static void Main()
    {
        var connectionString = "User Id=myUsername;Password=myPassword;Server=myServer;";
        using (var connection = new OracleConnection(connectionString))
        {
            connection.Open();
            using (var command = new OracleCommand("SELECT * FROM myTable", connection))
            {
                using (OracleDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Console.WriteLine(reader ["myColumn"].ToString());
                    }
                }
            }
        }
    }
}
Imports Devart.Data.Oracle
Friend Class Program
	Shared Sub Main()
		Dim connectionString = "User Id=myUsername;Password=myPassword;Server=myServer;"
		Using connection = New OracleConnection(connectionString)
			connection.Open()
			Using command = New OracleCommand("SELECT * FROM myTable", connection)
				Using reader As OracleDataReader = command.ExecuteReader()
					Do While reader.Read()
						Console.WriteLine(reader ("myColumn").ToString())
					Loop
				End Using
			End Using
		End Using
	End Sub
End Class
VB   C#

這段代碼片段已經用適當的連接字符串增強了。它從一個表中選擇數據。它將一個列值打印到控制台。用你的實際數據庫詳細信息替換 myUsernamemyPasswordmyServermyTablemyColumn。這是如何使用 C# Devart.Data.Oracle 執行基本數據庫操作的方法。

實現 Devart.Data.Oracle 的功能

直接模式

Devart.Data.Oracle 的一個突出功能,也是任何應用程序架構的重要部分,就是直接模式。這使得您的應用程序可以在沒有 Oracle 客戶端的情況下與 Oracle 數據庫一起工作。它簡化了部署,並減少了應用程序的整體佔用空間。

var connectionString = "User Id=myUsername; Password=myPassword; Direct=True; Server=myServer;";
using (var connection = new OracleConnection(connectionString))
{
    connection.Open();
    // Use the connection
}
var connectionString = "User Id=myUsername; Password=myPassword; Direct=True; Server=myServer;";
using (var connection = new OracleConnection(connectionString))
{
    connection.Open();
    // Use the connection
}
Dim connectionString = "User Id=myUsername; Password=myPassword; Direct=True; Server=myServer;"
Using connection = New OracleConnection(connectionString)
	connection.Open()
	' Use the connection
End Using
VB   C#

此範例顯示如何啟用直接模式。在您的連接字符串中新增 Direct=True

高級實體框架支持

Devart.Data.Oracle 增強實體框架 (EF) 操作。它提供了更好的性能。它支援 EF Core 和 EF6。它提供了廣泛的 Oracle 特定功能。

// Example assumes EF Core setup
using (var context = new MyDbContext())
{
    var data = context.MyEntities.Where(e => e.Property > 0).ToList();
    foreach (var item in data)
    {
        Console.WriteLine(item.Name);
    }
}
// Example assumes EF Core setup
using (var context = new MyDbContext())
{
    var data = context.MyEntities.Where(e => e.Property > 0).ToList();
    foreach (var item in data)
    {
        Console.WriteLine(item.Name);
    }
}
' Example assumes EF Core setup
Using context = New MyDbContext()
	Dim data = context.MyEntities.Where(Function(e) e.Property > 0).ToList()
	For Each item In data
		Console.WriteLine(item.Name)
	Next item
End Using
VB   C#

此代码使用 EF Core 获取数据。将 MyDbContextMyEntitiesProperty 替换为您实际的上下文和实体名称。

批量操作

批量操作對於高效能數據處理至關重要。Devart.Data.Oracle 提供批量複製功能。這對於大量數據傳輸非常有用。

using (var connection = new OracleConnection(connectionString))
{
    connection.Open();
    using (var bulkCopy = new OracleBulkCopy(connection))
    {
        bulkCopy.DestinationTableName = "targetTable";
        bulkCopy.WriteToServer(dataTable);
    }
}
using (var connection = new OracleConnection(connectionString))
{
    connection.Open();
    using (var bulkCopy = new OracleBulkCopy(connection))
    {
        bulkCopy.DestinationTableName = "targetTable";
        bulkCopy.WriteToServer(dataTable);
    }
}
Using connection = New OracleConnection(connectionString)
	connection.Open()
	Using bulkCopy = New OracleBulkCopy(connection)
		bulkCopy.DestinationTableName = "targetTable"
		bulkCopy.WriteToServer(dataTable)
	End Using
End Using
VB   C#

這段代碼展示了大量數據插入。將 targetTable 替換為您的目標表名稱。dataTable 應作為您的資料來源。

整合效能監控

效能監控已內建於 Devart.Data.Oracle 中。它允許您追蹤和優化資料庫互動。

using (var connection = new OracleMonitor() { IsActive = true })
{
    // Perform database operations
}
using (var connection = new OracleMonitor() { IsActive = true })
{
    // Perform database operations
}
Using connection = New OracleMonitor() With {.IsActive = True}
	' Perform database operations
End Using
VB   C#

啟用 OracleMonitor 並將 IsActive 設為 true。這將開始監控您的資料庫操作。

增強的LINQ to SQL支援

LINQ to SQL將複雜查詢轉換為高效SQL。Devart.Data.Oracle提供優化的LINQ to SQL功能。它支援複雜查詢和轉換。

using (var context = new MyDbContext())
{
    var query = from e in context.MyEntities
                where e.PropertyName == "Value"
                select e;
    foreach (var item in query)
    {
        Console.WriteLine(item.Property);
    }
}
using (var context = new MyDbContext())
{
    var query = from e in context.MyEntities
                where e.PropertyName == "Value"
                select e;
    foreach (var item in query)
    {
        Console.WriteLine(item.Property);
    }
}
Using context = New MyDbContext()
	Dim query = From e In context.MyEntities
		Where e.PropertyName = "Value"
		Select e
	For Each item In query
		Console.WriteLine(item.Property)
	Next item
End Using
VB   C#

MyDbContextMyEntitiesPropertyNameProperty 替換為實際的上下文、實體和屬性名稱。此示例使用 LINQ 查詢資料庫。

這些功能都能增強您的應用程式。它們使與 Oracle 資料庫的工作更高效。您可以使用直接存取、進階 EF 支援、大量操作、性能監控和增強的 LINQ to SQL。*

整合 IronPDF 和 Devart.Data.Oracle

IronPDF 簡介

C# Devart.Data.Oracle(對開發者的運作方式):圖2 - IronPDF首頁

IronPDF 是一個功能強大又簡單的庫,它允許開發人員在他們的.NET應用程式中創建、編輯和提取PDF內容。IronPDF的真正魅力在於其易於使用,提供簡便的方法來 將 HTML 轉換為 PDF - 網頁應用程式中報告、發票和文件的常見需求。

將IronPDF與Devart.Data.Oracle融合

想像一下,您正在進行一個專案,需要從存儲在Oracle數據庫中的數據生成報告,然後將該報告以PDF文件呈現。這就是結合IronPDF和Devart.Data.Oracle的情況。Devart.Data.Oracle是一款高性能的ADO.NET提供程序,為開發人員提供了一種從.NET應用程式有效訪問Oracle數據庫的方法。

使用案例的代碼範例

讓我們深入了解這個過程的實際範例。假設我們在 Oracle 資料庫中有一個名為 SalesReport 的表格,我們想生成一份總結該數據的 PDF 報告。首先,你需要通過 NuGet 安裝 IronPDF 和 Devart.Data.Oracle 套件。這可以通過 NuGet 套件管理器或使用套件管理器控制台來完成:

Install-Package IronPdf
Install-Package Devart.Data.Oracle

接下來,以下是從 SalesReport 表格中獲取數據並生成 PDF 的代碼:

using Devart.Data.Oracle;
using IronPdf;
using System;
class Program
{
    static void Main(string [] args)
    {
        // Connection string to Oracle Database
        var oracleConnectionString = "User Id=your_user;Password=your_password;Direct=True;Sid=your_sid;Server=your_server;";
        // SQL query to fetch data
        var sqlQuery = "SELECT * FROM SalesReport";
        // Initialize the Oracle connection
        using (var oracleConnection = new OracleConnection(oracleConnectionString))
        {
            oracleConnection.Open();
            // Execute the query
            using (var oracleCommand = new OracleCommand(sqlQuery, oracleConnection))
            {
                using (var reader = oracleCommand.ExecuteReader())
                {
                    // Here you would normally process your data. For simplicity, let's assume it's just a string of HTML.
                    var htmlContent = "<h1>Sales Report</h1><p>Generated on " + DateTime.Now + "</p>";
                    while (reader.Read())
                    {
                        // Append data from the reader to the HTML content
                        htmlContent += $"<p>{reader ["ItemName"]} - {reader ["SaleAmount"]}</p>";
                    }
                    // Now, let's create a PDF from the HTML content
                    var renderer = new ChromePdfRenderer();
                    var pdf = renderer.RenderHtmlAsPdf(htmlContent);
                    // Save the PDF to a file
                    pdf.SaveAs("SalesReport.pdf");
                }
            }
        }
        Console.WriteLine("PDF generated successfully.");
    }
}
using Devart.Data.Oracle;
using IronPdf;
using System;
class Program
{
    static void Main(string [] args)
    {
        // Connection string to Oracle Database
        var oracleConnectionString = "User Id=your_user;Password=your_password;Direct=True;Sid=your_sid;Server=your_server;";
        // SQL query to fetch data
        var sqlQuery = "SELECT * FROM SalesReport";
        // Initialize the Oracle connection
        using (var oracleConnection = new OracleConnection(oracleConnectionString))
        {
            oracleConnection.Open();
            // Execute the query
            using (var oracleCommand = new OracleCommand(sqlQuery, oracleConnection))
            {
                using (var reader = oracleCommand.ExecuteReader())
                {
                    // Here you would normally process your data. For simplicity, let's assume it's just a string of HTML.
                    var htmlContent = "<h1>Sales Report</h1><p>Generated on " + DateTime.Now + "</p>";
                    while (reader.Read())
                    {
                        // Append data from the reader to the HTML content
                        htmlContent += $"<p>{reader ["ItemName"]} - {reader ["SaleAmount"]}</p>";
                    }
                    // Now, let's create a PDF from the HTML content
                    var renderer = new ChromePdfRenderer();
                    var pdf = renderer.RenderHtmlAsPdf(htmlContent);
                    // Save the PDF to a file
                    pdf.SaveAs("SalesReport.pdf");
                }
            }
        }
        Console.WriteLine("PDF generated successfully.");
    }
}
Imports Devart.Data.Oracle
Imports IronPdf
Imports System
Friend Class Program
	Shared Sub Main(ByVal args() As String)
		' Connection string to Oracle Database
		Dim oracleConnectionString = "User Id=your_user;Password=your_password;Direct=True;Sid=your_sid;Server=your_server;"
		' SQL query to fetch data
		Dim sqlQuery = "SELECT * FROM SalesReport"
		' Initialize the Oracle connection
		Using oracleConnection As New OracleConnection(oracleConnectionString)
			oracleConnection.Open()
			' Execute the query
			Using oracleCommand As New OracleCommand(sqlQuery, oracleConnection)
				Using reader = oracleCommand.ExecuteReader()
					' Here you would normally process your data. For simplicity, let's assume it's just a string of HTML.
					Dim htmlContent = "<h1>Sales Report</h1><p>Generated on " & DateTime.Now & "</p>"
					Do While reader.Read()
						' Append data from the reader to the HTML content
						htmlContent &= $"<p>{reader ("ItemName")} - {reader ("SaleAmount")}</p>"
					Loop
					' Now, let's create a PDF from the HTML content
					Dim renderer = New ChromePdfRenderer()
					Dim pdf = renderer.RenderHtmlAsPdf(htmlContent)
					' Save the PDF to a file
					pdf.SaveAs("SalesReport.pdf")
				End Using
			End Using
		End Using
		Console.WriteLine("PDF generated successfully.")
	End Sub
End Class
VB   C#

在此範例中,我們首先使用 Devart.Data.Oracle OracleConnection 類別建立與 Oracle 資料庫的連線。然後,我們使用簡單的 SQL 查詢從 SalesReport 表格中提取資料。為了演示,提取的資料被轉換成 HTML 字串。 (在實際情況中,您會根據數據構建一個更複雜的 HTML 文件。). 最後,我們使用 IronPDF 的 ChromePdfRenderer 類將 HTML 字串轉換成 PDF 文件,然後將其本地保存。

結論

C# Devart.Data.Oracle(開發人員使用指南):圖 3 - IronPDF 授權頁面

在結束本教程時,很明顯將 Entity Framework Core 與 Devart.Data.Oracle 結合在一起增加了 Oracle 為基礎的應用程式開發。這些技術在您的開發環境中融合,通過 Visual Studio 引導,為創建穩健、可擴展的應用程式打開了許多可能性。對於希望深入研究 Oracle 為基礎的數據庫應用程式的開發人員來說,利用 Entity Framework Core 的全面特性與 DotConnect for Oracle 結合,提供了堅實的基礎。您可以試用 IronPDF 免費。 免費 費用從 $749 起。

< 上一頁
Sendgrid .NET(開發人員如何運作)
下一個 >
C# 日誌記錄(開發人員的工作原理)

準備開始了嗎? 版本: 2024.10 剛剛發布

免費 NuGet 下載 總下載次數: 10,993,239 查看許可證 >