שינוי מחלקה חיצונית c#
-
(כהמשך לאשכול הזה)
אני מנסה לגשת לווקומרס באמצעות api מתוך קליינט c#.אני צריך ליצור הזמנה חדשה.
הקוד שיש בדוגמא שם - לצורך יצירת מוצר חדש, עובד מצויין.//Add new product Product p = new Product() { name = "test product 8", description = "test product 8", price = 8.0M }; await wc.Product.Add(p);
כששיניתי אותו לצורך יצירת הזמנה חדשה (לפי התיעוד כאן) באמצעות הקוד דלהלן
Order p = new Order() { payment_method = "bacs", payment_method_title = "Direct Bank Transfer", set_paid = true, }; await wc.Order.Add(p);
הוא ג"כ יוצר את ההזמנה. רק, שבשונה מיצירת מוצר שיש רק רמה אחת בשליחת הפרמטרים, ביצירת הזמנה יש 2 רמות. ולא הצלחתי להזין את הפרמטרים.
אז ניסיתי את הקוד דלהלן אבל הוא נותן לי שגיאה
Order p = new Order() { payment_method = "bacs", payment_method_title = "Direct Bank Transfer", set_paid = true, billing = { first_name = "John" } }; await wc.Order.Add(p);
אם טעיתי במערך, אז יותר פשוט.
ואם לא, והבעיה היא במחלקה, אז האם יש אפשרות / כדאי לשנות אותה ע"מ שתקבל את הערכים הללו?תודה.
-
השורה הזו
billing = { first_name = "John" }
היא לא תקפה בC#, לאובייקט חדש חייבים לציין new ולאחמ"כ את סוגו (אם לא שזה אנונימי וזה לא המקרה) ורק אחרי זה הסוגריים של האתחול מאפיינים.
תוכל לשאול מנין לך איזה סוג מצפה המאפיין biliing לקבל? הו זה מאוד קל. ראשית תוך כדי ההשלמה אוטומטית יש בחלונית צפה על חבר את הפרטים עליו, שנית אחרי הקשת שווה אחרי המאפיין וכתיבת new ההשלמה אוטומטית תשלים לך את הטיפוס הנדרש.
במקרה שלך בדקתי עבורך ומדובר ב OrderBilling, ככה:billing = new OrderBilling { first_name = "John" }
-
-
@chagold הקוד שלך בודאי לא טוב. אין כזה דבר להתחיל {} שלא אחרי יצירת אובייקט חדש.
@yossiz צדק, אלא שהטעת אותו בסוג הטיפוס. אם אתה כותב שווה אחרי הline_items , ואחרי new ההשלמה אוטומטית אמורה להציע לך טיפוס שונה לגמרי:
List<OrderLineItem>
בקיצור כותבים ככה:
line_items = new List<OrderLineItem> { new OrderLineItem {product_id=23 ,quantity=1}, new OrderLineItem {product_id = 22, name="name" ,quantity = 1} }
זה מאוד נועז מה שאתה עושה - אתה לומד תחביר של שפה "תוך כדי נסיעה". מעניין איך תתחבר לזה בסוף.
-
@dovid אמר בשינוי מחלקה חיצונית c#:
זה מאוד נועז מה שאתה עושה - אתה לומד תחביר של שפה "תוך כדי נסיעה". מעניין איך תתחבר לזה בסוף.
זה הכי טוב לא?
-
@יוסף-בן-שמעון אמר בשינוי מחלקה חיצונית c#:
@dovid אמר בשינוי מחלקה חיצונית c#:
זה מאוד נועז מה שאתה עושה - אתה לומד תחביר של שפה "תוך כדי נסיעה". מעניין איך תתחבר לזה בסוף.
זה הכי טוב לא?
לא יודע מה הכי טוב. יודע שתמיד עבדתי ככה.(חוץ מספר על html שקראתי לפני).