DataSet ds = new DataSet("ObfDS"); string lcPath = Path.GetDirectoryName.System.Reflection.Assembly.GetExecutingAssembly().GetName().CodeBase.ToString()); string lcFullXsdName = Path.Combine(lcPath, "obf.xsd"); string lcFullXmlName = Path.Combine(lcPath, "obf.xml"); // read schema if (File.Exists(lcFullXsdName)) // this returns false on emulator ds.ReadXml(lcFullXsdName); // not executed on emulator // read xml if (File.Exists(lcFullXmlName)) ds.ReadXml(lcFullXmlName); // give a name to the table - not used ds.Tables[0].TableName = "tObf"; // this errors on emulator DataRow dr = ds.Tables[0].NewRow(); dr[0] = DateTime.Now.ToString(); dr[1] = DateTime.Now.TimeOfDay; dr[2] = "3"; dr[3] = chkTlc.Checked.ToString(); dr[4] = txtSta1.Text; dr[5] = txtSta2.Text; dr[6] = txtStn.Text; dr[7] = txtCar.Text; dr[8] = txtFf.Text; dr[9] = txtPf.Text; dr[10] = txtZf.Text; dr[11] = txtLoad.Text; ds.Tables[0].Rows.Add(dr); ds.AcceptChanges(); ds.WriteXml("obf.xml"); txtFf.Text = "0" ; txtPf.Text = "0" ; txtZf.Text = "0" ; txtLoad.Text = "0" ; MessageBox.Show(DateTime.Now.TimeOfDay + " inspection by " + txtSta1.Text + " on board "+ txtCar.Text +" leaving " + txtStn.Text + " was saved.", "Fare Inspection Saved"); lblMsg.Text = "Total Fare Checks: ";On the Pocket, the code executes fine, I get the message at the end, but there is no data added. On the emulator, the xml/xsd files are not found.