با استفاده از function import به هيچ وجه نميشه گفت كه كار پيچيده است، مگه وقتي خودتون دستي يا با استفاده از ديتاست ويزارد اين كار مي كنيد كار خيلي راحت تري انجام ميديد؟صرفا چون به روش هاي سنتي عادت داريد براتون شايد ساده بياد. دوم اينكه استفاده از function import از طريق designer روش خيلي مطمئني نيست چون ممكنه به هر دليل اون رو پاك يا حذف كنيد. در كل فايل ها edmx خيلي روشون نبايد حساب كرد(البته منظور هميشه نيست) روش اصولي تر ايجاد موارد لازم از طريق كد با استفاده از partial هست،اين روش ميشه گفت پيچيده است.
روش بعدي اينه كه با روش سنتي(Connection، Command و ...) spرو اجرا كنيد، بعد ديتا به دست اومده رو تو يك ليستي از يك كلاس معادل بريزيد و از طريق متد هاي Invoke در DomainService ديتا رو برگشت بديد. براي تبديل ديتا از sp به هر كلاس
سیم کارت رند معادلي مي تونيد با استفاده از Reflection يك متد عمومي ايجاد كنيد كه بتونه براتون هر نوع خروجي sp رو به كلاس معادل تبديل كنه.
اما در نهايت بايد گفت كه روش هاي كه در سيلورلايت استفاده ميشه روش ها مدرن هست و به همين دليل روش هاي سنتي در اون كمي با زحمت ترن. اما اين اصلا ضعف محسوب نميشه. اين مثل اين ميمونه كه بگيد چون گوشي هاي جديد مادون قرمز ندارن پس داراي ضعف هستند.
ماكروسافت براي تكنولوژي هاي مختلفش انقدر tools و generator هاي ساده گذاشته كه وقتي شما به جايي ميرسيد كه tools ش كمتره فكر مي كنيد اين ضعفه.