lightswitch阶段学习积累

如何在自定义代码中使用LS数据源
public class UserDomainService : DomainService
{
	[Query(IsDefault=true)]
	public IEnumerable<User> GetUsers()
	{
		try
		{
			IDataWorkspace dw =
			ApplicationProvider.Current.CreateDataWorkspace();
			var users = dw.SecurityData.UserRegistrations.GetQuery().Execute();

			return users.Select(p => new User() { UserName = p.UserName }).ToList();
		}
		catch (Exception ex)
		{
			return null;
		}
	}

}
public class User
{
	[Key]
	public string UserName { get; set; }
}

在自定义控件中使用数据源,必需使用Application.Current.Details.Dispatcher
LightSwitchApplication.Application.Current.Details.Dispatcher.BeginInvoke(() =>
                {
                    LightSwitchApplication.DataWorkspace workspace = LightSwitchApplication.Application.Current.CreateDataWorkspace();
                    var cs = workspace.MyTeamInfoData.Deptments.GetQuery().Execute();


LS与asp.net 单点登录集成方法
http://lightswitchhelpwebsite.com/Blog/tabid/61/EntryId/107/Integrating-LightSwitch-Into-An-ASPNET-Application-To-Provide-Single-Sign-On.aspx
A.	Asp.net设定如下
1.	使用asp.net membership provider
2.	创建membership provider tables ,并在web.config中指向正确的库
3.	Web.config文件中设定application name
4.	Web.config文件中设定Machine Key
5.	Web.config文件中设定Forms Name
6.	Web.config文件中添加Profile属性FullName
B.	LS中设定如下
1.	LS使用Forms Authentication方法
2.	创建一个新的连接字符串指向asp.net中使用的连接
3.	Web.config文件中设定application name(同asp.net)
4.	Web.config文件中设定Machine Key(同asp.net)
5.	Web.config文件中设定Forms Name(同asp.net)


public void  CallHyperLink(string navigateUri)
{
    Microsoft.LightSwitch.Threading.Dispatchers.Main.BeginInvoke(() =>
    {
        if (AutomationFactory.IsAvailable)
        {
            dynamic shell = AutomationFactory.CreateObject("Shell.Application");
            shell.ShellExecute(navigateUri.ToString());
        }
        else if (!System.Windows.Application.Current.IsRunningOutOfBrowser)
        {
            System.Windows.Browser.HtmlPage.Window.Navigate(new Uri(navigateUri) , "_blank");
        }
        else
        {
            throw new InvalidOperationException();
        }
 
    });
}
如何打开一个连接


 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值