返回首页

我是做双手上就通过OData服务从Silverlight访问MS CRM数据。
由于我练的CRUD(创建,读取,更新和删除)操作在同一一部分。
我没有遇到任何问题,阅读的创建,读取和删除操作。
唯一的问题,我面对的是读操作。
让我描述我的问题。
数据获取正确的客户关系管理(CRM)和查询执行后生成的URI,正常工作时,在IE独立执行。
当我给ListBox控件获取数据,它显示了"SilverlightApplication43.CRMOdata.Contact??,我想表明从接触的一些具体领域如名字,但不知何故,我无法做到这一点。
我欣赏你的人如果能帮助我。
我的代码放在这里

namespace SilverlightApplication43

{

    public partial class MainPage : UserControl

    {

        public  DataServiceCollection<Contact> _contacts;

        System.Windows.Data.Binding list;

        (myorgname)Context context;

        public MainPage()

        {

            InitializeComponent();

            MainPage_Loaded(this,new RoutedEventArgs() );

 

        }

 

        void MainPage_Loaded(object sender, RoutedEventArgs e)

        {

            var serviceUri = "http://crmdev:5555/(Myorgname)/XRMServices/2011/OrganizationData.svc/";

 

            (Myorgname)Context ctx = new (Myorgname)Context(new Uri(serviceUri));

 

            //to avoid cross domain issues

            ctx.HttpStack = System.Data.Services.Client.HttpStack.ClientHttp;

            ctx.UseDefaultCredentials = false;

            ctx.Credentials = new NetworkCredential("administrator", "somepassword", "somedomain");

 

            context = ODataServiceFactory.GetInstance<(Myorgname)Context>();

 

            var query = from c in context.ContactSet

                        select c;

 

            _contacts = null;

            _contacts = new DataServiceCollection<Contact>();

 

            _contacts.LoadCompleted += new EventHandler<LoadCompletedEventArgs>(_contacts_LoadCompleted);

 

            _contacts.LoadAsync(query);

        }

        void _contacts_LoadCompleted(object sender, LoadCompletedEventArgs e)

        {

            var binding = (DataServiceCollection<Contact>)sender;

 

            listBox1.ItemsSource = _contacts;

            //I am doubtful about both statements

            listBox1.ItemsSource = _contacts.ToList<Contact>();

        }

 

    }

}

回答

评论会员: 时间:2
A