DCSIMG
C# 4.0 Part 9 - Spell Checking with word using Optional Parameters - שלמה גולדברג (הרב דוטנט)

שלמה גולדברג (הרב דוטנט)

מרצה בסלע ויועץ בעולם ה - net.

C# 4.0 Part 9 - Spell Checking with word using Optional Parameters

 

 כמו שהבטחתי אני רוצה להדגים שימוש ב - Optional Parameters.
 
 
הקוד הבא משתמש בבדיקת האיות של Word.
 
 

    public static void Main()

    {

        Application word = new Application();

 

        object missingValue = Type.Missing;

       

        Document doc = word.Documents.Add(ref missingValue, ref missingValue,

                                        ref missingValue, ref missingValue);

        doc.Activate();

 

        SpellingSuggestions suggestions =

            word.GetSpellingSuggestions("placa",

                                ref missingValue, ref missingValue,

                                ref missingValue, ref missingValue,

                                ref missingValue, ref missingValue,

                                ref missingValue, ref missingValue,

                                ref missingValue, ref missingValue,

                                ref missingValue, ref missingValue,

                                ref missingValue);

 

 

        foreach (SpellingSuggestion sg in suggestions)

        {

            Console.WriteLine(sg.Name);

        }

    }

 
 
כדי לא להשאיר באפלה את מי שלא מבין את הקוד הזה, אני אתן הסבר קצר.
 
בהתחלה אני יוצר מופע של Word Application, אני מוסיף לו מסמך (כי אני לא יכול להשתמש בבודק האיות אם אין מסמך), אבל היות שהמתודה Add מקבלת כל מיני פרמטרים (החל מתבנית ועד האם להציג את המסמך) אני שולח את הערך Type.Missing שכמשמעותו - אובייקט חסר ערך ובמילים אחרות אני אומר לפונקציה להשתמש בערך ברירת המחדל עבור הפרמטרים.
 
לאחר מכן אני מפעיל את המתודה GetSpellingSuggestions שמקבלת מילה לבדיקה ועוד שלוש עשרה פרמטרים שונים ומשונים (ותאמינו לי מי שנתקל פעם ראשונה בזה:
 
 
Image 
 אין לו מושג מה צריך לשלוח).
 
 
בסוף אני מדפיס את ההצעות שקבלתי.
 
Spelling Suggestion
 
 
נחזור לעניין. גם המתודה Add וגם המתודה GetSpellingSuggestion הפרמטרים שלהם מוגדרים כפרמטרי רשות (אם תעשו את זה ב - VB.Net תראו) אבל היות שעד ל C# 4.0 השפה לא תמכה בפרמטרי רשות, הקוד היה נראה זוועה.
 
 
שימו לב לאותו קוד ב - C# 4.0
 

    public static void Main()

    {

        Application word = new Application();

 

        Document doc = word.Documents.Add();

        doc.Activate();

 

        SpellingSuggestions suggestions = word.GetSpellingSuggestions("placa");

 

        foreach (SpellingSuggestion sg in suggestions)

        {

            Console.WriteLine(sg.Name);

        }

    }

 
מדהים איך שפיצ'ר אחד קטן גורם שהקוד שלנו נראה קריא ויפה יותר.
 
הנה הבקשה של GetSpellingSuggestion:
 
image2
 
 
 
בפוסט הבא (בעזרת ה' במוצאי שבת) נכנס אל מאחורי הקלעים של Optional Parameters ונבין איך זה עובד והאם יש לזה השפעה על הביצועים, ועוד.

תוכן התגובה

Maor David-Pur כתב/ה:

שבת שלום שלמה. עודה מדהימה אתה עושה. נהנה לקרוא את פוסטים שלך.

מאור

# June 26, 2009 12:02 PM

Shlomo כתב/ה:

תודה על המחמאה

# June 26, 2009 3:27 PM

יוני אורנשטיין כתב/ה:

בס"ד חבל שרק עכשיו כתבת את הפוסט הזה, זה היה יכול לחסוך לי הרבה קוד לפרוייקט של בנדי בDS :)

# June 29, 2009 10:36 PM
שלח תגובה

(שדה חובה)  

(שדה חובה)  

(אופציונלי)

(שדה חובה) 

Please add 2 and 3 and type the answer here:


Enter the numbers above: