我有一个包含 2 个项目的解决方案...
项目 A 有以下 A - 参考第三方 DLL(其中有一个名为“Response”的类) B - 使用上述 DLL 并从名为“GetResponse”的方法返回“Response”对象的类
现在项目 B 像这样调用项目 A 中的类......
Response r = ProjectA.Class.GetResponse();
Run Code Online (Sandbox Code Playgroud)
这将返回一个错误,因为我的项目 B 中没有“第三方”引用。
我宁愿不将我的第三方 DLL 发送到我的所有其他项目,只是为了从第三方DLL获取对响应对象的引用。
那么有没有办法无需将第 3 方引用添加到项目 B 中呢?
我使用Github作为我的源代码管理,并使用Github Actions作为我的 CI/CD 解决方案。我在某处有一个专用的 Windows Server,它接受我的存储库的已发布版本。
我有一个 Github Action,它可以进行构建、测试、发布和部署(使用 FTP)。我不相信“部署”的想法。例如,假设我的网站有一个巨大的代码库,然后每次我们进行提交(推送)时进行 FTPing 并不是一个富有成效的想法(我正在发布已发布的目录......而不是我的服务器的源代码)。有时,由于 IIS 锁定文件,FTPing 根本不起作用。使用 Github Actions(或任何其他提供商)将文件发布/部署到远程服务器的最可靠方法是什么。
下面是我的示例 Yaml 文件...
name: .NET Core
on:
push:
branches: [ master ]
pull_request:
branches: [ master ]
jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Setup .NET Core
uses: actions/setup-dotnet@v1
with:
dotnet-version: 2.1
- name: Install dependencies
run: dotnet restore
- name: Build
run: dotnet build --configuration Release --no-restore
- name: Test …Run Code Online (Sandbox Code Playgroud) 当我执行crontab -l 时,我可以看到我所有的工作
56 12 3 2 * /usr/bin/python3 /home/pi/Saqib/RaspBerryPiAdhan/www/commands/player.py "https://server6.mp3quran.net/akdr/001.mp3" "Office Ustairs speaker" >> .error.log 2>&1 # Al-Fatiha - [Verses 7]
56 12 * * * /files/python3 /home/pi/Saqib/RaspBerryPiAdhan/www/commands/player.py "https://server6.mp3quran.net/akdr/001.mp3" "Office Ustairs speaker" >> .error.log 2>&1 # Al-Fatiha - [Verses 7]
31 18 3 2 * /usr/bin/python3 /home/pi/Saqib/RaspBerryPiAdhan/www/commands/player.py "/static/media/azan5.mp3" "Office Ustairs speaker" # prayer_isha
Run Code Online (Sandbox Code Playgroud)
无论如何,我只能提取“表达式”吗?
我需要这样出去......
56 12 3 2 *
56 12 * * *
31 18 3 2 *
Run Code Online (Sandbox Code Playgroud) 我正在编写一个 WPF 表单应用程序,在其中我尝试使用 Async await 方法循环遍历文件夹并实时显示其文件。在我的Task.Run()方法中,我正在引发我的事件,这引发了很好的事件,但是该事件代码还更新了一个位于UI 线程上的 TEXT BOX,因此我收到了 UI 线程错误
“调用线程不能访问这个对象,因为另一个线程拥有它。”
. 有什么方法可以更改我的代码以便我可以更新我的 TextBox?
private delegate void GetFilesCount(string f);
private event GetFilesCount onFileCount;
private void Btn_Compare_Click(object sender, RoutedEventArgs e)
{
onFileCount += FileCount;
CountFilesAsync();
}
function async void CountFilesAsync() {
await Task.Run(()=> {
System.IO.DirectoryInfo myDir = new System.IO.DirectoryInfo(path);
foreach (FileInfo item in myDir.GetFiles())
{
onFileCount(item.Name); // This is an EVENT
}
});
}
Run Code Online (Sandbox Code Playgroud)
和我的事件处理程序代码
private void FileCount(string fileName)
{
txtLabel_Log.Text = …Run Code Online (Sandbox Code Playgroud) 我有这样的界面......
public interface IVisitsService
{
IEnumerable<T> GetVisits<T,S>(S filters);
}
Run Code Online (Sandbox Code Playgroud)
我的应用程序将使用此接口用于不同的对象.假设类"A"和类"B"将实现此接口,但是它们将为"T"和"S"泛型提供它们自己的对象,因此返回类型和参数类型将为每个对象VARY.我很难妥善解决这个问题.
例如...
public class VisitsBService : IVisitsService
{
public IEnumerable<T> GetVisits<T,S>(S filters)
{
return _visitRepo.GetVisits<VisitsHcs,VisitFilters>(filters);
}
}
Run Code Online (Sandbox Code Playgroud)
然后另一个类可以使用它自己的对象...
public class VisitsAService : IVisitsService
{
public IEnumerable<T> GetVisits<T,S>(S filters)
{
return _visitRepo.GetVisits<VisitsBcs,VisitBFilters>(filters);
}
}
Run Code Online (Sandbox Code Playgroud) c# ×3
.net ×1
asp.net-core ×1
async-await ×1
bash ×1
cron ×1
generics ×1
github ×1
shell ×1
wpf ×1