我只是不知道如何解释清楚。所以我创建了一个我所做过的简单图像模式。
我的问题是,我如何能够访问我的数据库在LS的其他类?
我一直在网上搜索,但我没有找到任何解决方案。我希望我能在这里找到它。
谢谢! 如何在其他课程的lightswitch中访问数据库?
任何建议已经被赞赏。
我只是不知道如何解释清楚。所以我创建了一个我所做过的简单图像模式。
我的问题是,我如何能够访问我的数据库在LS的其他类?
我一直在网上搜索,但我没有找到任何解决方案。我希望我能在这里找到它。
谢谢! 如何在其他课程的lightswitch中访问数据库?
任何建议已经被赞赏。
感谢您的回答布莱恩访问它,但我找到了答案我的问题就在这里Richard Waddell
这里是什么我做到了实现我的目标。
Authenticate.cs
),并把这个代码。的代码如下:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Microsoft.LightSwitch;
namespace LightSwitchApplication
{
public class Authenticate
{
public static adminuser GetCurrentUser()
{
adminuser userFound = (from useritem in
Application.Current.CreateDataWorkspace().basecampcoreData.adminusers
where useritem.LoginID == Application.Current.User.Name
select useritem).SingleOrDefault();
if (userFound != null)
return userFound;
else
return null;
}
}
}
然后你就可以在任何地方,现在在项目中调用Authenticate.GetCurrentUser()
。
谢谢!
主要区别在于第一组工作的代码在屏幕中运行。对于您的Authenticate类,您需要执行以下步骤来访问数据库。
注:我假设你的数据源具有默认名称ApplicationData,因为你隐藏了名称,如果没有,请进行相应的更改。如果它是一个完全不同的数据源,变“_IntrinsicData”在下面的步骤)
这些步骤都取自Lightswitch Help Website
导航到..ServerGenerated \ GeneratedArtifacts(在LightSwitch的项目)和单击ApplicationData.cs和添加为链接。
在下面添加下面的代码,这段代码动态创建一个到数据库的连接。 LightSwitch使用“_IntrinsicData”作为连接字符串。
private ApplicationDataObjectContext m_context;
public ApplicationDataObjectContext Context
{
get
{
if (this.m_context == null)
{
string connString =
System.Web.Configuration.WebConfigurationManager
.ConnectionStrings["_IntrinsicData"].ConnectionString;
EntityConnectionStringBuilder builder = new EntityConnectionStringBuilder();
builder.Metadata =
"res://*/ApplicationData.csdl|res://*/ApplicationData.ssdl|res://*/ApplicationData.msl";
builder.Provider =
"System.Data.SqlClient";
builder.ProviderConnectionString = connString;
this.m_context = new ApplicationDataObjectContext(builder.ConnectionString);
}
return this.m_context;
}
}
您应该能够通过Context.adminusers
感谢您分享如何做到这一点:) –