程序集依赖属性

时间:2016-09-27 00:57:25

标签: c# xamarin dependencies

我正在学习Xamarin,在一个教程中,我看到了以下代码:

using System;

using Android.App;
using Android.Content.PM;
using Android.Runtime;
using Android.Views;
using Android.Widget;
using Android.OS;
using System.IO;
using Xamarin.Forms;

[assembly: Dependency(typeof(Notes.Droid.DadosEspecificos))]

namespace Notes.Droid
{
    [Activity(Label = "Notes", Icon = "@drawable/icon", MainLauncher = true, ConfigurationChanges = ConfigChanges.ScreenSize | ConfigChanges.Orientation)]
    public class MainActivity : global::Xamarin.Forms.Platform.Android.FormsApplicationActivity
    {
        protected override void OnCreate(Bundle bundle)
        {
            base.OnCreate(bundle);

            global::Xamarin.Forms.Forms.Init(this, bundle);
            LoadApplication(new App());
        }
    }

    public class DadosEspecificos : IDadosEspecificos
    {
        public string CaminhoDB(string NomeDB)
        {
            return Path.Combine(System.Environment.GetFolderPath(System.Environment.SpecialFolder.Personal), NomeDB);
        }
    }
}

该项目是跨平台空白应用程序(Xamarin.Forms Portable)。

我想知道下面一行的含义是什么:

[assembly:Dependency(typeof(Notes.Droid.DadosEspecificos))]

为什么有必要?

感谢。

1 个答案:

答案 0 :(得分:0)

Xamarin.Forms允许开发人员在特定于平台的项目中定义行为。依赖性服务找到正确的平台实现,允许共享代码访问本机功能。

见这里

https://developer.xamarin.com/guides/xamarin-forms/application-fundamentals/dependency-service/