跳至頁尾內容
.NET 幫助

C# Devart.Data.Oracle(開發者使用指南)

歡迎來到我們的 完整解決方案教學,了解如何將 C# Devart.Data.Oracle 與 IronPDF 整合以建立全面的應用程式,重點在於基於 Oracle 的資料庫應用程式。 本教程描述的指南專為有興趣在其 .NET Framework.NET Core 專案中利用 Oracle 資料庫的強大功能的初學者所設計。 Devart.Data.Oracle 是功能強大的資料提供者,可直接存取 Oracle 資料庫。

C# Devart.Data.Oracle 是一個簡化 Oracle 資料庫操作的函式庫。 它適用於需要與 Oracle 資料庫互動的開發人員。 本庫提供進階功能。 它簡化了資料庫連線。 它能增強資料處理能力。 這使它成為 C# 開發人員的重要工具。

探索 IronPDF 的 PDF 生成功能,它是一款允许 C# 开发人员创建、编辑和读取 PDF 文件的工具。 它可以輕鬆地與 .NET 應用程式整合。 IronPDF 有助於從 HTML 生成 PDF。 它提供了一種以程式化方式處理 PDF 檔案的方法。

這兩種工具都有不同的用途。 C# Devart.Data.Oracle 著重於 Oracle 資料庫的互動。 IronPDF 專注於 PDF 檔案處理。 這些工具共同提升 C# 開發人員的能力。 它們解決了軟體開發中兩種截然不同的需求。 本文將主要針對 C# Devart.Data.Oracle。

C# Devart.Data.Oracle 入門

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

若要開始使用 C# Devart.Data.Oracle,這個著名的 Oracle 資料庫提供者,您首先需要透過 Visual Studio 的解決方案總管將其加入您的 .NET Core 專案。 這個過程很直接。 前往 NuGet 套件管理員。 搜尋"Devart.Data.Oracle"。 安裝套件以利用 DotConnect for Oracle 和 Dataset 工具。 此動作會將函式庫新增至您的專案。 現在您可以開始使用其功能。

C# Devart.Data.Oracle (How It Works For Developers):圖 1 - 在 Visual Studio 中透過 NuGet 套件管理員搜尋 Devart.Data.Oracle

基本程式碼範例

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

using Devart.Data.Oracle;
using System;

class Program
{
    static void Main()
    {
        // Define the connection string with placeholders for your specific database information
        var connectionString = "User Id=myUsername;Password=myPassword;Server=myServer;";

        // Establish a connection to the Oracle database
        using (var connection = new OracleConnection(connectionString))
        {
            connection.Open();

            // Execute a SQL command
            using (var command = new OracleCommand("SELECT * FROM myTable", connection))
            {
                using (OracleDataReader reader = command.ExecuteReader())
                {
                    // Read and print each row of the result set
                    while (reader.Read())
                    {
                        Console.WriteLine(reader["myColumn"].ToString());
                    }
                }
            }
        }
    }
}
using Devart.Data.Oracle;
using System;

class Program
{
    static void Main()
    {
        // Define the connection string with placeholders for your specific database information
        var connectionString = "User Id=myUsername;Password=myPassword;Server=myServer;";

        // Establish a connection to the Oracle database
        using (var connection = new OracleConnection(connectionString))
        {
            connection.Open();

            // Execute a SQL command
            using (var command = new OracleCommand("SELECT * FROM myTable", connection))
            {
                using (OracleDataReader reader = command.ExecuteReader())
                {
                    // Read and print each row of the result set
                    while (reader.Read())
                    {
                        Console.WriteLine(reader["myColumn"].ToString());
                    }
                }
            }
        }
    }
}
$vbLabelText   $csharpLabel

此程式碼片段以正確的連接字串增強。 它從表格中選擇資料,並將列值列印到控制台。 將 myUsernamemyPasswordmyServermyTablemyColumn取代為您實際的資料庫詳細資訊。 這是如何使用 C# Devart.Data.Oracle 執行基本資料庫操作。

實現 Devart.Data.Oracle 的功能

直接模式

Devart.Data.Oracle 是任何 應用程式架構的重要組成部分,其中一個突出的功能就是 Direct Mode。 這可讓您的應用程式在沒有 Oracle Client 的情況下使用 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
}
$vbLabelText   $csharpLabel

本範例說明如何啟用直接模式。 在連線字串中加入 Direct=True

進階 Entity Framework 支援。

Devart.Data.Oracle 增強了 Entity Framework (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);
    }
}
$vbLabelText   $csharpLabel

此代碼使用 EF Core 擷取資料。 將 MyDbContextMyEntitiesProperty替換為您實際的上下文和實體名稱。

Bulk Operations

大量操作對於高效能的資料處理至關重要。 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);
    }
}
$vbLabelText   $csharpLabel

此程式碼示範大量資料插入。 將 targetTable 替換為您的目標表格名稱。 dataTable 應該是您的資料來源。

整合式效能監控

效能監控內建於 Devart.Data.Oracle。 它可以讓您追蹤和優化資料庫互動。

using System;
using Devart.Data.Oracle;

class Example
{
    static void Main()
    {
        // Enable monitoring
        using (var monitor = new OracleMonitor() { IsActive = true })
        {
            // Perform database operations here
            // Monitoring will log interactions
        }
    }
}
using System;
using Devart.Data.Oracle;

class Example
{
    static void Main()
    {
        // Enable monitoring
        using (var monitor = new OracleMonitor() { IsActive = true })
        {
            // Perform database operations here
            // Monitoring will log interactions
        }
    }
}
$vbLabelText   $csharpLabel

啟用 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);
    }
}
$vbLabelText   $csharpLabel

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

每項功能都能增強您的應用程式。 它們讓您使用 Oracle 資料庫的工作更有效率。 您可以隨時使用直接存取、進階 EF 支援、大量操作、效能監控以及增強的 LINQ to SQL。

整合 IronPDF 和 Devart.Data.Oracle

IronPDF 簡介

C# Devart.Data.Oracle (How It Works For Developers):圖 2 - IronPDF 首頁

瞭解 IronPDF 的功能作為一個函式庫,它具有簡單而強大的功能:它允許開發人員在其 .NET 應用程式中建立、編輯和擷取 PDF 內容。 IronPDF 的真正魅力在於它的易用性,它提供直接的方法來 將 HTML 轉換為 PDF - 這是網頁應用程式中報告、發票和文件的常見需求。

IronPDF 擅長於 HTML 至 PDF 的轉換,可確保精確保留原始版面與樣式。 它非常適合從網頁內容(如報告、發票和文件)建立 PDF。 IronPDF 支援 HTML 檔案、URL 和原始 HTML 字串,可輕鬆製作高品質的 PDF 文件。

using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize IronPDF's renderer
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
using IronPdf;

class Program
{
    static void Main(string[] args)
    {
        // Initialize IronPDF's renderer
        var renderer = new ChromePdfRenderer();

        // 1. Convert HTML String to PDF
        var htmlContent = "<h1>Hello, IronPDF!</h1><p>This is a PDF from an HTML string.</p>";
        var pdfFromHtmlString = renderer.RenderHtmlAsPdf(htmlContent);
        pdfFromHtmlString.SaveAs("HTMLStringToPDF.pdf");

        // 2. Convert HTML File to PDF
        var htmlFilePath = "path_to_your_html_file.html"; // Specify the path to your HTML file
        var pdfFromHtmlFile = renderer.RenderHtmlFileAsPdf(htmlFilePath);
        pdfFromHtmlFile.SaveAs("HTMLFileToPDF.pdf");

        // 3. Convert URL to PDF
        var url = "http://ironpdf.com"; // Specify the URL
        var pdfFromUrl = renderer.RenderUrlAsPdf(url);
        pdfFromUrl.SaveAs("URLToPDF.pdf");
    }
}
$vbLabelText   $csharpLabel

將 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 Package Manager 或透過 Package Manager Console 來完成:

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

接下來,以下是您如何編寫程式碼,從 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())
                {
                    // Initialize HTML content for PDF generation
                    var htmlContent = "<h1>Sales Report</h1><p>Generated on " + DateTime.Now + "</p>";

                    // Append database data to the HTML content
                    while (reader.Read())
                    {
                        htmlContent += $"<p>{reader["ItemName"]} - {reader["SaleAmount"]}</p>";
                    }

                    // Create a PDF from the HTML content using IronPDF
                    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())
                {
                    // Initialize HTML content for PDF generation
                    var htmlContent = "<h1>Sales Report</h1><p>Generated on " + DateTime.Now + "</p>";

                    // Append database data to the HTML content
                    while (reader.Read())
                    {
                        htmlContent += $"<p>{reader["ItemName"]} - {reader["SaleAmount"]}</p>";
                    }

                    // Create a PDF from the HTML content using IronPDF
                    var renderer = new ChromePdfRenderer();
                    var pdf = renderer.RenderHtmlAsPdf(htmlContent);

                    // Save the PDF to a file
                    pdf.SaveAs("SalesReport.pdf");
                }
            }
        }

        Console.WriteLine("PDF generated successfully.");
    }
}
$vbLabelText   $csharpLabel

在本範例中,我們首先使用 Devart.Data.Oracle OracleConnection 類別設定與 Oracle 資料庫的連線。 然後,我們使用簡單的 SQL 查詢從 SalesReport 表中取得資料。 為了進行示範,我們將擷取的資料轉換成 HTML 字串(在實際情境中,您會根據資料建立更複雜的 HTML 文件)。 最後,我們使用 IronPDF 的 ChromePdfRenderer 類別將 HTML 字串轉換成 PDF 文件,然後儲存到本機。

結論

C# Devart.Data.Oracle (How It Works For Developers):圖 3 - IronPDF 授權頁面

在結束本教程時,很明顯 Entity Framework Core 與 Devart.Data.Oracle 的整合豐富了基於 Oracle 應用程式的開發。 在 Visual Studio 的引導下,將這些技術融合到您的開發環境中,將為您開啟一扇大門,讓您可以創造出強大、可擴充的應用程式。 對於想要深入研究 Oracle 資料庫應用程式的開發人員而言,利用 Entity Framework Core 與 DotConnect for Oracle 的全面功能,將可打下穩固的基礎。 您可以使用 免費試用或查看價格$799開始嘗試 IronPdf。

常見問題解答

如何將 C# Devart.Data.Oracle 與 IronPDF 整合到我的 .NET 專案中?

要在 .NET 專案中將 C# Devart.Data.Oracle 與 IronPDF 集成,首先需要在 Visual Studio 中透過 NuGet 套件管理器安裝這兩個庫。使用 Devart.Data.Oracle 連線並從 Oracle 資料庫取得數據,然後使用 IronPDF 將取得的數據轉換為 PDF 文件。

在 Devart.Data.Oracle 中使用直接模式有哪些優點?

Devart.Data.Oracle 中的直接模式允許應用程式連接到 Oracle 資料庫而無需 Oracle 用戶端軟體,從而簡化部署並減少應用程式的整體佔用空間。

如何使用.NET將HTML內容轉換為PDF?

您可以使用 IronPDF 在 .NET 中將 HTML 內容轉換為 PDF。利用ChromePdfRenderer類別可以輕鬆地將 HTML 字串、文件或 URL 渲染成高品質的 PDF 文件。

Entity Framework 在 Devart.Data.Oracle 整合中扮演什麼角色?

Entity Framework 與 Devart.Data.Oracle 整合後,透過支援 Oracle 特有的進階功能來提升效能。它允許開發人員利用複雜查詢和轉換等功能來實現高效的資料庫操作。

如何使用 Devart.Data.Oracle 執行批次資料操作?

Devart.Data.Oracle 支援批次操作,例如批次複製,這對於高效傳輸大量資料非常有用。這些操作有助於優化 .NET 應用程式中的資料處理任務。

從Oracle資料庫資料產生PDF報告需要哪些步驟?

若要從 Oracle 資料庫資料產生 PDF 報告,請使用 Devart.Data.Oracle 擷取必要的數據,然後套用 IronPDF 將資料格式化並轉換為 PDF 報告。

如何使用 Devart.Data.Oracle 增強資料庫效能監控?

使用OracleMonitor類別增強 Devart.Data.Oracle 中的效能監控。將其IsActive屬性設為 true 即可開始追蹤資料庫互動並優化效能。

如何將 Devart.Data.Oracle 加入到 .NET 專案中?

若要將 Devart.Data.Oracle 新增至 .NET 專案中,請使用 Visual Studio 的 NuGet 套件管理器。搜尋「Devart.Data.Oracle」並安裝它,即可在應用程式中啟用 Oracle 資料庫功能。

為什麼開發人員應該考慮將 LINQ to SQL 與 Devart.Data.Oracle 結合使用?

開發人員應考慮將 LINQ to SQL 與 Devart.Data.Oracle 結合使用,因為它提供了最佳化的查詢功能並支援複雜的資料轉換,從而提高了資料庫互動的效率和效能。

如何在.NET應用程式中將HTML渲染為PDF?

在 .NET 應用程式中,可以使用 IronPDF 的RenderHtmlAsPdf方法將 HTML 渲染為 PDF。此方法允許開發人員無縫地將 HTML 字串或檔案轉換為 PDF。

Jacob Mellor,Team Iron 首席技術官
首席技術長

Jacob Mellor 是 Iron Software 的首席技術官,也是一位富有遠見的工程師,率先開發了 C# PDF 技術。作為 Iron Software 核心程式碼庫的最初開發者,他自公司成立之初便參與塑造了其產品架構,並與執行長 Cameron Rimington 一起將其發展成為一家擁有 50 多名員工、服務於 NASA、特斯拉和全球政府機構的公司。

Jacob 於 1998 年至 2001 年在曼徹斯特大學獲得土木工程一級榮譽學士學位。 1999 年,他在倫敦創辦了自己的第一家軟體公司;2005 年,他創建了自己的第一個 .NET 元件。此後,他專注於解決微軟生態系統中的複雜問題。

他的旗艦產品 IronPDF 和 IronSuite .NET 庫在全球 NuGet 上的安裝量已超過 3000 萬次,其基礎程式碼持續為全球開發者工具提供支援。憑藉 25 年的商業經驗和 41 年的程式設計專長,Jacob 始終致力於推動企業級 C#、Java 和 Python PDF 技術的創新,同時指導下一代技術領導者。