小编use*_*214的帖子

UWP App与Windows服务的通信

我们正在修复重新构建应用程序,并且正在讨论是否可以使用UWP而不是普通的WPF应用程序.

我们的应用程序需要能够访问整个文件系统和所有系统资源.这是一个问题,因为UWP应用程序是沙箱.但是,我们试图通过尝试以这种方式处理它来绕过该问题:

  • Windows服务 - >始终在系统上运行.这将在访问和修改系统资源时承载核心功能.

  • UWP应用程序 - >由于UWP是沙盒,UWP应用程序会将所有系统请求转发到Windows服务,这将完成所有主要工作并返回输出.

我们可以简单地在WPF中执行此操作,但我们希望使用UWP以利用WPF缺少的一些新的Windows 10核心功能,例如live tiles和Cortana.

你认为我们的方法是否可行?我们的一个不确定因素是我们如何让UWP应用程序与Windows服务进行通信 - 我们已经研究过SignalR和Desktop Bridge这样的东西,但不确定哪种方法可能是我们方案的最佳方法.

谢谢!

windows-services signalr uwp desktop-bridge

6
推荐指数
1
解决办法
3848
查看次数

JPA查询针对不同参数返回相同结果

我遇到一个问题,其中我的查询方法在foreach循环中,并且每次我传递不同的参数以检索不同的信息时。但是,在循环的第一次迭代之后,查询数据将被缓存(我认为)并为后续循环返回相同的数据。

这是我的代码:

@Transactional(readOnly = true)
public List<InitiativeReport> getInitiativeReports() throws Exception {
try {
    List<InitiativeReport> ir = new ArrayList<InitiativeReport>();
    List<Initiative> in = initiativeRepository.findAll();
    for(Initiative i : in) {
        i.getTheme().getId(); // lazy initialize

        InitiativeReport report = new InitiativeReport();
        report.setId(i.getId());
        report.setInitiativeId(i.getInitiativeId());
        report.setName(i.getName());
        report.setTheme(i.getTheme());

        // this is the call to the query, which is cached after the first iteration
        List<InitiativeProfileQuestion> q = initiativeProfileQuestionRepository.getQuestionsAndAnswerLogs(i.getInitiativeId());
        report.setQuestions(q);
        ir.add(report);
    }

    return ir;
}
catch (Exception e) {
    throw new Exception(e);
}
Run Code Online (Sandbox Code Playgroud)

这是我的存储库界面:

public interface InitiativeProfileQuestionRepository extends JpaRepository<InitiativeProfileQuestion, Long> …
Run Code Online (Sandbox Code Playgroud)

java spring hibernate jpa spring-data

3
推荐指数
2
解决办法
4046
查看次数