我有两个表Employee和Permenent表。 permenet表是Employee的ISA表 这是两个表的模式
create table employees(
employee_no varchar(5),
name varchar(50),
nic varchar(10),
address varchar(100),
designation varchar(20),
Land varchar(10),
Mobile varchar(10),
constraint pkemployees primary key(employee_no),
constraint fkemployees foreign key(land,mobile) references telephone)
create table permenenet(
username varchar(20),
password varchar(10),
password_hint varchar(50),
employee_no varchar(5),
constraint fkpermenet foreign key(employee_no) references employees,
constraint pkpermenet primary key(employee_no).
我创建了WCF服务以获取名称和名称
public List<employee>get_name(string uname){
var resl = (from per in dc.permenenets
join emp in dc.employees on per.employee_no equals emp.employee_no
where per.username == uname && per.employee_no == emp.employee_no
select emp);
return resl.ToList();
}
但是当我使用WCF客户端测试或从WPF应用程序获取数据时,我得到空答案。感谢帮助
答案 0 :(得分:1)
&& per.employee_no == emp.employee_no
不是必需的,因为您已经加入此条件。permenenets
与username
完全相同的uname
,以便生成与per.username = @uname
类似但不会per.username LIKE @uname
的SQL。如果您不寻求完全匹配,则必须使用SqlMethods.Like
或其他内容。resl.ToString()
(即通过设置断点并使用watch)并尝试直接针对SQL Server运行生成的查询,并将参数替换为uname
值,看看是否得到任何结果。