跳過到頁腳內容
.NET HELP

C# Devart.Data.Oracle (How It Works For Developers)

歡迎來到我們的 完整解決方案教學,了解如何將 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。

常見問題解答

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

要在 .NET 專案中整合 C# Devart.Data.Oracle 與 IronPDF,首先要在 Visual Studio 中透過 NuGet Package Manager 安裝這兩個函式庫。使用 Devart.Data.Oracle 從 Oracle 資料庫連線並擷取資料,然後運用 IronPDF 將擷取的資料轉換成 PDF 文件。

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

Devart.Data.Oracle 中的 Direct Mode 可讓應用程式連線至 Oracle 資料庫,而無需 Oracle Client 軟體,這可簡化部署並減少整體應用程式的佔用空間。

如何使用 .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 Package Manager。搜尋「Devart.Data.Oracle」並安裝,以在您的應用程式中啟用 Oracle 資料庫功能。

開發人員為何要考慮使用 Devart.Data.Oracle 的 LINQ to SQL?

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

如何在 .NET 應用程式中將 HTML 呈現為 PDF?

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

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

Jacob Mellor 是 Iron Software 的首席技術長,也是開創 C# PDF 技術的有遠見的工程師。作為 Iron Software 核心程式碼庫背後的原始開發人員,他從公司成立之初就塑造了公司的產品架構,與首席執行官 Cameron Rimington 一起將公司轉型為一家 50 多人的公司,為 NASA、Tesla 和全球政府機構提供服務。

Jacob 持有曼徹斯特大學土木工程一級榮譽工程學士學位 (BEng)(1998-2001 年)。

Jacob 於 1999 年在倫敦開設了他的第一家軟體公司,並於 2005 年創建了他的第一個 .NET 元件,之後,他專門解決微軟生態系統中的複雜問題。

他的旗艦產品 IronPDF & Iron Suite for .NET 函式庫在全球的 NuGet 安裝量已超過 3000 萬次,他的基礎程式碼持續為全球使用的開發人員工具提供動力。Jacob 擁有 25 年的商業經驗和 41 年的編碼專業知識,他一直專注於推動企業級 C#、Java 和 Python PDF 技術的創新,同時指導下一代的技術領導者。