= 15 // 過濾價格大於等於 15 的食物 orderby o.name descending // 依據名稱進行降序排列 select new { // 匿名型別,將 na"> = 15 // 過濾價格大於等於 15 的食物 orderby o.name descending // 依據名稱進行降序排列 select new { // 匿名型別,將 na"> = 15 // 過濾價格大於等於 15 的食物 orderby o.name descending // 依據名稱進行降序排列 select new { // 匿名型別,將 na">
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace LINQ20240923
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }

        private void button1_Click(object sender, EventArgs e)
        {
            Food[] foodList = new Food[] {
                new Food() { name = "milk", price = 5 },
                new Food() { name = "bread", price = 15 },
                new Food() { name = "sugar", price = 15 },
                new Food() { name = "water", price = 2 }
            };
            var query = from o in foodList
                        where o.price >= 15   // 過濾價格大於等於 15 的食物
                        orderby o.name descending  // 依據名稱進行降序排列
                        select new
                        {
                            // 匿名型別,將 name 屬性重新命名為 newName
                            newName = o.name,

                            // 計算價格的台幣金額 (假設每單位價格 * 30)
                            NT_Price = o.price * 30
                        };

            foreach (var food in query.ToList())
            {
                MessageBox.Show(food.newName);
            }
             dataGridView1.DataSource = query.ToList();
        }

    }
}

class Food
{
    public string name { set; get; }
    public int price { set; get; }
}

    

first與firstordefault都是回傳單一值

 // 1. 定義函式
        // 2. 呼叫函式
        //
        int Add(int x, int unit) {
            return x + unit;
        }

        private void button1_Click(object sender, EventArgs e) {
            int answer = Add(1000, 1);
            (sender as Button).Text = answer.ToString();
        }

1. 定義函式

在 C# 中,函式(或稱方法)是執行特定任務的程式碼區塊。下面的程式碼定義了一個名為 Add 的函式,這個函式接收兩個整數參數並返回它們的和。

int Add(int x, int unit) {
    return x + unit; // 返回 x 和 unit 的和
}

解釋:

2. 呼叫函式

在事件處理程式中(如按鈕點擊事件),我們可以調用之前定義的 Add 函式來執行計算。以下是按鈕點擊時的程式碼:

private void button1_Click(object sender, EventArgs e) {
    int answer = Add(1000, 1); // 呼叫 Add 函式,並將結果賦值給 answer
    (sender as Button).Text = answer.ToString(); // 將按鈕的文本設置為計算結果
}

解釋: