I figured out that I missed putting the name of the parameter after the (aspnet_id = ?) so the entire query clause should read:
<asp:SqlDataSource ID="MySQLCustData" runat="server"
ConnectionString="<%$ ConnectionStrings:MySQLCN %>" ProviderName="<%$ ConnectionStrings:MySQLCN.ProviderName %>"
SelectCommand="SELECT egw_addressbook.n_fn, egw_addressbook.adr_one_street, egw_addressbook.adr_one_street2, egw_addressbook.adr_one_locality, egw_addressbook.adr_one_region, egw_addressbook.adr_one_postalcode FROM egw_addressbook INNER JOIN ewise_device ON egw_addressbook.aspnet_id = ewise_device.aspnet_id WHERE (ewise_device.aspnet_id = ?aspnet_id)">
<SelectParameters>
<asp:SessionParameter DbType="Int32" Name="aspnet_id" SessionField="UserID" />
</SelectParameters>
</asp:SqlDataSource>
<asp:SqlDataSource ID="MySQLCustData" runat="server" ConnectionString="<%$ ConnectionStrings:MySQLCN %>" ProviderName="<%$ ConnectionStrings:MySQLCN.ProviderName %>"
SelectCommand="SELECT egw_addressbook.n_fn, egw_addressbook.adr_one_street, egw_addressbook.adr_one_street2, egw_addressbook.adr_one_locality, egw_addressbook.adr_one_region, egw_addressbook.adr_one_postalcode FROM egw_addressbook INNER JOIN ewise_device ON egw_addressbook.aspnet_id = ewise_device.aspnet_id WHERE (ewise_device.aspnet_id = ?aspnet_id)">
<SelectParameters>
<asp:SessionParameter DbType="Int32" Name="aspnet_id" SessionField="UserID" />
</SelectParameters>
</asp:SqlDataSource>
Of course, declare the session variable UserID in code behind like this:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.Security;
using System.Text;
public partial class home : System.Web.UI.Page
{
protected void Page_Load(object sender, EventArgs e)
{
Session["UserID"] = Membership.GetUser().ProviderUserKey;
}
}